Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1072to1076
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
Textbox: Cursor-Position
04.05.2009 12:43:13
Angela
Hallo,
ich habe eine Textbox mit einem Default-Wert von 00:15:00, mit der ich offensichtlich eine Zeit eingeben will. Wenn ich auf die Textbox klicke, soll der Cursor automatisch zur 4. Position springen. Also habe ich folgenden Code probiert:

Private Sub MinVarInput_Enter()
MinVarInput.SelStart = 3
End Sub


Allerdings funktioniert das nicht. Wenn ich das gleiche mit


Private Sub MinVarInput_Change()
MinVarInput.SelStart = 3
End Sub


mache, geht's wunderbar, aber das nützt mir nichts. Kann mir jemand erklären, was an dem Code falsch ist und wie ich den Cursor nun verschieben kann?
Danke im voraus,
Angela

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Private Sub TextBox1_GotFocus()
04.05.2009 12:49:25
Matthias
Hallo

Private Sub TextBox1_GotFocus()
TextBox1.SelStart = 3
End Sub


Gruß Matthias

AW: GotFocus nur bei Steuerelement-Texboxen
04.05.2009 13:28:22
Daniel
bei Userform-Textboxen gibt es dieses Event nicht, dort heißt es eben ENTER.
Gruß, Daniel
Ich habe nichts von einem Userform geschrieben. oT
04.05.2009 13:44:31
einem
AW: aber auch nichts von Steuerelmenten oT
04.05.2009 14:00:16
Steuerelmenten
muß ich ja auch nicht. Willst Du nur streiten? kwT
04.05.2009 14:16:00
Matthias
AW: nein, nur die Qualität deiner Anwort
04.05.2009 15:34:46
Daniel
verbessern.
Gruß, Daniel
und die Qualität Deiner Anwort ...
04.05.2009 16:27:47
Matthias
Hallo
Zitat von Angela:
Wenn ich auf die Textbox klicke, soll der Cursor automatisch zur 4. Position springen.
Und Du bist der Meinung Deine Antwort war Qualität?
Versuch weiter zu helfen, das ist ja ok so. Aber lass es sein Andere verbessern zu wollen.
Meine Antwort habe ich an Angela geschickt, in die Du Dich eingemischt hast.
Sie kann für sich selbst antworten, ob es hilft oder ob ich es falsch verstanden habe.
In Deiner Antwort an Angela steht übrigens das Wort "Steuerelement" auch nicht, schon bemerkt?
Gruß Matthias
Anzeige
AW: und die Qualität Deiner Anwort ...
04.05.2009 17:12:57
Daniel
Das stimmt natürlich, ich hätte darauf hinweisen müssten, daß meine Antwort nur für Userform-Textboxen geeignet ist.
Allerdings bin ich, grade aufgrund der Verwendung von ENTER davon ausgegangen, daß es sich um solche handelt.
Schließlich wird GOTFOCUS bei Steuerelementtextboxen gar nicht erst angeboten.
Gruß, Daniel
AW: und die Qualität Deiner Anwort ...
04.05.2009 18:29:55
Matthias
Darin siehst Du doch selbst, das es jeder anders interpretiert.
Ich habe das Enter-Ereignis auch gelesen. Und mir ist auch das Enter-Ereignis bekannt
das heißt aber nicht, das der 2. Code (Name_Change ) ebenfalls in einerm Userform steht.
TextBox1_Change gibt es ja schließlich auch in der Textbox der Steiuerelement-Toolbox.
Das alles soll aber nicht heißen, das ich Deine Beiträge nicht schätze.
Ich schätze jeden einzelnen Forenteilnehmer, der hier hilft oder auch nur helfen will.


Man muß aber nicht gleich Qualitätsverbesserer spielen.
Userbild
Anzeige
AW: und die Qualität Deiner Anwort ...
04.05.2009 19:07:16
Daniel
Hi
sorry, das hab ich verwechselt, ich meinte natürlich "Schließlich wird GOTFOCUS bei Userform-Textboxen nicht erst angeboten", so wäre es korrekt gewesen.
Außerdem empfinde ich unsere kleine Diskussion nicht als Streit und ich bin jedem dankbar, der mich auf meine Fehler aufmerksam macht (auch wenn es machmal schwer fällt, dies anzuerkennen ;-)) und mir so hilft, mich weiterzuentwickeln.
Gruß, Daniel
ok ... :o) ___ oT
04.05.2009 19:13:57
Matthias
AW: besser MouseUP-Event verwenden
04.05.2009 13:24:57
Daniel
Hi
ich denke mal, daß wird schwierig, weil der Mauszeiger bei der Positionierung beim Reinklicken Priorität vor der Einstellung aus dem ENTER-Event hat.
besser funktioniert es mit dem MOUSE_UP-Event.
das hätte allerdings den Nachteil, daß die Cursorposition dann nicht mehr nachträglich mit der Maus, sondern nur mit den Tasten aktiviert werden kann.
Ebenfalls würde dieses Event nicht ansprechen, wenn du die Textbox über die Tab-Taste anspringst.
deswegen muss man das etwas aufwendiger programmieren, das hier sollte nach deinen Wünschen funktionieren:

Option Explicit
Dim CursorVerändern As Boolean
Private Sub MinVarInput_Enter()
CursorVerändern = False
MinVarInput.SelStart = 3
End Sub
Private Sub MinVarInput_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As  _
Single, ByVal Y As Single)
If Not CursorVerändern Then
MinVarInput.SelStart = 3
CursorVerändern = True
End If
End Sub


desweitern muss die Eigenschaft der Textbox EnterFieldBehavior auf 1-fmEnterFieldBehaviorRecallSelection gesetzt werden.
Gruß, Daniel

Anzeige
AW: besser MouseUP-Event verwenden
04.05.2009 17:18:39
Angela
Danke, funktioniert super.
Liebe Grüße,
Angela

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige