Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

cursor in textbox(UF) | Herbers Excel-Forum


Betrifft: cursor in textbox(UF) von: stefan
Geschrieben am: 10.12.2009 16:38:47

Hallo meine Guten

Seit langem brauche ich mal weider eure Hilfe.
Nach langer, aber nicht zufriedestellender Suche über Gooogle und im Forumsarchiv, komme ich jetzt auf euch zurück.

Ich habe eine Userform in der sich eine Textbox befindet.
Diese fülle ich beim Start der UF mit einem Text, welcher 10 Zeichen lang ist.
Nach dem öffnen soll der Cursor hinter dem 10. Zeichen stehen und blinken.
SetFocus habe ich schon gesetzt.
Klicke ich in die TB steht der Cursor gleich an 10ter Stelle.
Das soll aber ohne mein Zutun geschehen.

Danke. Gruß, Stefan

  

Betrifft: textbox1.selstart=10 owT von: Rudi Maintaire
Geschrieben am: 10.12.2009 16:43:06




  

Betrifft: AW: cursor in textbox(UF) von: Hajo_Zi
Geschrieben am: 10.12.2009 16:43:59

Hallo Stefan,

TextBox2 = "0123456789"
TextBox2.SetFocus


GrußformelHomepage


  

Betrifft: AW: cursor in textbox(UF) von: stefan
Geschrieben am: 10.12.2009 17:40:06

Hallo

Danke für die schnellen Antworten.
Habe das gleich mal in einer neu erstellten Datei getestet. Lief super.
Mein Problem ist, es läuft nicht in meiner Datei.
Hänge sie euch mal an. Leicht gekürzt.
Den Rest habe ich gelöscht, da dies funktioniert.(Search Button)

https://www.herber.de/bbs/user/66492.xls

Kann es auch mit der Aktivierreihenfolge der UF zusammenhängen?

Stefan


  

Betrifft: AW: cursor in textbox(UF) von: Hajo_Zi
Geschrieben am: 10.12.2009 17:46:31

Hallo Sefan,

Private Sub UserForm_Activate()
TextBox1.Text = "1 305 630 "
TextBox1.SetFocus
'TextBox1.SelStart = 10
End Sub

Gruß Hajo


  

Betrifft: AW: cursor in textbox(UF) von: stefan
Geschrieben am: 10.12.2009 18:09:26

Hallo

Problem gelöst. Hajo hat den Fehler gefunden.
Ich hatte geschrieben:

Private Sub UserForm_Initialize()
TextBox1.Text = "1 305 630 "
TextBox1.SetFocus
TextBox1.SelStart = 10
End Sub
Initialize war dann wohl falsch. Activate wäre richtig gewesen.

Wieso? Was ist der Unterschied, Hajo?

Stefan


  

Betrifft: AW: cursor in textbox(UF) von: Hajo_Zi
Geschrieben am: 10.12.2009 18:13:16

Hallo Stefan,

Ini.. wird nur einmal in der Sitzung ausgeführt, Activate bei jedem Start de Userform. Das ist mal der grundsätzliche Unterrschied.

Gruß Hajo


  

Betrifft: AW: cursor in textbox(UF) von: stefan
Geschrieben am: 10.12.2009 18:19:22

Vielen Dank....


  

Betrifft: AW: cursor in textbox(UF) von: Beverly
Geschrieben am: 10.12.2009 18:30:09

Hi Stefan,

als Ergänzung zu Hajos Beitrag: das Initialize-Ereignis wird grundsätzlich vor dem Activate-Ereignis ausgeführt und da das UserForm in diesem Moment noch nicht angezeigt wird, wirkt der Befehl SetFocus nicht.

Ich persönlich verwende das Initialize-Ereignis z.B. dann, wenn eine große Datenmenge in das UserForm eingelesen werden muss - wenn man dies beim Activate ausführt, würde es jedes Mal sehr lange dauern bis das UserForm gestartet wird. Außerdem verwendet man das Initialize-Ereignis, wenn man mit Klassenprogrammierung im UserForm arbeitet, weil die Steuerelemente in den Klassen bereits vor dem Starten des UserForms erzeugt werden müssen.


GrußformelBeverly's Excel - Inn


Beiträge aus den Excel-Beispielen zum Thema "cursor in textbox(UF)"