Invio su TextBox1 SetFocus su TextBox1
Hai un problema con Excel? 
Invio su TextBox1: SetFocus su TextBox1
di beppexile data: 30/09/2016 14:56:59
Salve ragazzi, ormai è segno del destino che mi devo perdere sempre in cavolate.
Veniamo subito al dunque, ho allegato un file con una userform, una textbox, un tasto e una listbox
scrivendo un valore sulla TB e premendo il tasto, questo viene caricato sulla listbox; e fin qui tutto regolare.
Per evitare un doppio invio (invio sulla textbox per passare il focus al tasto e invio sul tasto per inserire il valore nella listbox), ho ben pensato di sfruttare l'evento keydown della textbox per eseguire le stesse operazioni del tasto, solo che perdo il focus e non capisco come mai.
Come posso fare, dopo l'invio sulla textbox a portare il focus nuovamente sulla stessa textbox?
In pratica, vorrei eliminare il tasto e automatizzare l'inserimento dati dalla textbox alla listbox solo tramite invio.
Grazie a tutti
di Albatros54 data: 30/09/2016 16:46:32
prova il codice sotto
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
ListBox1.AddItem TextBox1.Value
TextBox1.Value = ""
If TextBox1.Value = "" Then
Cancel = True
TextBox1.SetFocus
End If
End Sub |
di scossa data: 30/09/2016 20:05:06
Ciao Albatros,
cit.: "TextBox1.Value = ""
If TextBox1.Value = "" Then"
che senso ha quell'If, visto che con l'istruzione precedente hai assegnato proprio "" al TextBox?
| scossa's web site |
Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw) |
di Albatros54 data: 01/10/2016 08:40:26
Ciao scossa
cit.: "TextBox1.Value = ""
If TextBox1.Value = "" Then"
Effettivamente è come dici tu , meglio toglierla.
Ciao
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
ListBox1.AddItem TextBox1.Value
TextBox1.Value = ""
Cancel = True
TextBox1.SetFocus
End Sub |
di beppexile data: 03/10/2016 10:49:21
Grazie ragazzi, adesso funziona.
Avevo già provato ad usare il cancel nell'evento exit, ma evidentemente ho sbagliato ad applicarlo visto che non mi funzionava.
Peccato che non ho più il codice che avevo scritto per confrontarlo, ma ad occhio mi sembra uguale.
L'importante è aver risolto. Grazie.
Vuoi Approfondire?