Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
300to304
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
300to304
300to304
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Focus geht immer in Listbox

Focus geht immer in Listbox
02.09.2003 12:09:23
Nathalie
Hallo zusammen,

ich habe ein Problem, habe auf einer Form eine Listbox, eine Textbox und3 Buttons plaziert. Nach dem Eintrag in die Textbox und anschließendem Enter drücken, wird mein Eintrag in die Listbox geschrieben. Am Ende der Speichernprozedur, setze ich den Focus auf die Textbox mit

txtEingabe.SetFocus

allerdings ist mein Focus nach Abschluß der Prozedur auf meiner Listbox.

Kann mir jemand sagen wo dran das liegt und wie ich das unterdrücken kann?

gruß Nathalie

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Focus geht immer in Listbox
02.09.2003 12:16:33
sergiesam
Hi,
das liegt an der Reihenfolge der Funktionen

AfterUpdate-Ereignis:
Eintrag, dann
Liste ausgefüllt
Focus auf Textbox-setzen

wenn ereignis komplett fertig, verschiebt excel erst den Fokus, d.h. es bekommt deine Anweisung gar nicht mehr mit.

Wenn du nie in die Liste reinmusst kannst du beim Enter-Ereignis der liste auf die Texbox wechseln:


Sub Listbox_Enter
textbox1.setfocus
End Sub


Sam
Warum kriegt er mein Ereignis nicht mehr mit?
02.09.2003 12:21:20
Nathalie

Private Sub cmdSpeichern_Enter()
Einlesen des Strings aus Textbox.
AddItem zur Listbox.
SetFocus auf Textbox
End Sub


dann müsste er doch eigentlich mein Ereignis noch ausführen oder?
Und nicht in die Listbox den Focus setzen.

Deinen anderen Tip kann ich leider nicht anwenden, ich muß bezüglich Löschen von Einträgen noch in die LIstbox klicken dürfen

Gruß und Danke

Nathalie
Anzeige
weiter offen...
02.09.2003 12:27:38
sergiesam
Hi,

er setzt deinen Befehl schon durch. Nur leider bevor er überhaupt die Textbox verlassen hat, denn es werden erst alle befehle von deinem Ereignis ausgeführt und DANN erst setzt er den Fokus zum nächsten Element.

hmm...tja, dann fällt mir leider auch nichts ein,
Sorry,
Sam
AW: Focus geht immer in Listbox
02.09.2003 12:17:58
ChrisL
Hi Nathalie

Da müsste man schon etwas mehr Info haben. Ich vermute, du hast irgendwo noch ein Change Ereignis hinterlegt, das ebenfalls ausgelöst wird. Vielleicht hilft auch mal das Ausführen im Einzelschrittmodus.

Gruss
Chris
AW: Focus geht immer in Listbox
02.09.2003 12:25:02
Nathalie

Private Sub cmdSpeichern_Enter()
Einlesen des Strings aus Textbox.
Sortieren Listbox
AddItem zur Listbox.
Leerstring in Textbox schreiben.
SetFocus auf Textbox
End Sub


so ungefähr sieht das was in meinem Speichern-Ereignis hinterlegt ist aus.

Im Einzelschrittmodus hab ich auch gesehen, das er meinen Focus im Feld läßt, solange die Funktion noch nicht beendet ist. Sobald er über End Sub
geht, ist der Focus versetzt.

Gruß Nathalie
Anzeige
AW: Focus geht immer in Listbox
02.09.2003 12:36:42
ChrisL
Hi Nathalie

Wenn du eine 'Trockenübung' machst...

1. TextBox
1. ListBox
1. CommandButton


Private Sub CommandButton1_Click()
ListBox1.AddItem TextBox1
TextBox1.SetFocus
End Sub


Dann wird der Focus doch hergestellt oder?

Insofern kann ich mir nur vorstellen dass du uns einen Teil deines Codes z.B. hinter der TextBox 'verheimlichst' ;-)

Gruss
Chris
Das Enter Ereignis ist es schuld-->HILFE
02.09.2003 12:49:57
Nathalie
Klar verheimliche ich was;) Weil es nicht wichtig ist;)

Hab gerad mal Deine Trockenübung ausprobiert und du hast recht, so tut es das. Allerdings hab ich ja kein Click Ereignis auf dem Button sondern das Enter Ereignis und wenn ich das benutze dann funktioniert es allerdings nicht.

Aber ich würd gern das Enter behalten oder weißt du ne andere möglichkeit, wie ich direkt den Button mit Enter anstoßen kann so das der User nicht immer wieder auf den Button per Mausclick drauf muß umd ihn zu aktivieren?

Gruß Nathalie
Anzeige
AW: Das Enter Ereignis ist es schuld-->HILFE
02.09.2003 13:01:20
ChrisL
ach soooo :-)))

Dann lass den Commandbutton doch gleich ganz bleiben und mach es so...


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
ListBox1.AddItem TextBox1
Cancel = True
End Sub

Gruss
Chris
Prima das ist es...
02.09.2003 13:11:55
Nathalie
Das ist ne gute Idee, die es sogar tut;)

werd das jetzt auch benutzen, echt Klasse!

DANKE DIR
Naja nur bedingt ne gute Idee
02.09.2003 13:21:09
Nathalie
Naja ist doch nicht das richtige, hätte dir nichts verheimlichen sollen, weil was mache ich jetzt mit meinem Verlassen und Löschen Button? die kann ich doch jetzt gar nicht mehr ansteuern, wenn ich das Exit ERgebnis der Textbox verwende;)

Naja gut ich muß mal schauen ob mir was einfällt, oder ich verzichte auf so nen schickschnack
Anzeige
AW: Naja nur bedingt ne gute Idee
02.09.2003 13:30:49
ChrisL
Hast natürlich recht... Kommt mir eigentlich nur folgende Lösung in den Sinn...

Option Explicit


Private Sub CommandButton1_Click()
End
End Sub



Private Sub CommandButton2_Click()
ListBox1.Clear
End Sub



Private Sub TextBox1_Change()
Aenderung = True
End Sub



Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Aenderung = True Then
ListBox1.AddItem TextBox1
Aenderung = False
Cancel = True
End If
End Sub

' Im Standardmodul

Public Aenderung As Boolean

Gruss
Chris
Anzeige
Die Idee ist nicht schlecht....
02.09.2003 13:55:11
Nathalie
...ob ich das wirklich anwende weiß ich noch nicht, aufjedenfall ist es ne gute Idee. Die Umsetzbar ist.

DANkE DIR

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige