Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1000to1004
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
Cursor springt in Pampa (MultiLine TextBox)
11.08.2008 12:15:00
Kilo
Hallo liebe VBA Profis
(Danke an Jürgen, der sich meines Problems annehmen wollte, aber der UpLoad meiner Datei war irgendwie fehlgeschlagen - hier der 2. Versuch)
ich bin auf ein für mich nicht lösbares Problem - vielleicht sogar Phänomen gestoßen...
Leider kann ich keine Phänomene dieser Art gebrauchen.
Damit es für Sie etwas anschaulicher wird, hab ich mein Problem als Beispiel (https://www.herber.de/bbs/user/54508.xls
) mal hochgeladen.
Kurze Beschreibung:
Ich habe eine Userform mit Textbox(Multi-Line und Scrollbars-Vertical), die mit Text aus der hinterlegten Tabelle „gefüttert“ wird. Es passen 3 Zeilen Text in die Textbox ohne dass die Scrollbar aktiv wird.
Hat mein Text 3 oder weniger Zeilen und ich klicke in die Textbox, steht der Cursor genau auf der angeklickten Stellen des Textes.
Hat der Text mehr als 3 Zeilen, wird (Problem 1) die Scrollbar nicht angezeigt – obwohl aktiviert – bis man das erste Mal in die TextBox klickt.
Und dann kommt das viel schlimmere Problem Nr 2: Der Cursor springt in eine Position genau um die o.a. 3 Zeilen versetzt.
Ich weiß nicht, wie ich das Problem lösen kann – ich brauche den Cursor da, wo ich hinklicke auch im „Mehrzeilen-Betrieb“. Kann mir jemand helfen?
Besten Dank im Voraus
Michael

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Cursor springt in Pampa (MultiLine TextBox)
11.08.2008 12:21:31
Kilo
Hallo liebe VBA Profis
(Danke an Jürgen, der sich meines Problems annehmen wollte, aber der UpLoad meiner Datei war irgendwie fehlgeschlagen - hier der 2. Versuch)
ich bin auf ein für mich nicht lösbares Problem - vielleicht sogar Phänomen gestoßen...
Leider kann ich keine Phänomene dieser Art gebrauchen.
Damit es für Sie etwas anschaulicher wird, hab ich mein Problem als Beispiel https://www.herber.de/bbs/user/54508.xls
mal hochgeladen.
Kurze Beschreibung:
Ich habe eine Userform mit Textbox(Multi-Line und Scrollbars-Vertical), die mit Text aus der hinterlegten Tabelle „gefüttert“ wird. Es passen 3 Zeilen Text in die Textbox ohne dass die Scrollbar aktiv wird.
Hat mein Text 3 oder weniger Zeilen und ich klicke in die Textbox, steht der Cursor genau auf der angeklickten Stellen des Textes.
Hat der Text mehr als 3 Zeilen, wird (Problem 1) die Scrollbar nicht angezeigt – obwohl aktiviert – bis man das erste Mal in die TextBox klickt.
Und dann kommt das viel schlimmere Problem Nr 2: Der Cursor springt in eine Position genau um die o.a. 3 Zeilen versetzt.
Ich weiß nicht, wie ich das Problem lösen kann – ich brauche den Cursor da, wo ich hinklicke auch im „Mehrzeilen-Betrieb“. Kann mir jemand helfen?
Besten Dank im Voraus
Michael

Anzeige
AW: Cursor springt in Pampa (MultiLine TextBox)
11.08.2008 13:22:00
Daniel
Hallo
das Problem ist, daß VBA bestimmte änderungen an den Elementen erst dann vornimmt, wenn man draufklickt und nicht schon, wenn man die Werte ändert.
aber man kann das Draufklicken mit ".SetFocus" simulieren, dann müsste die Darstellung der Scrollbars sofort passen.
das zweite Problem ist, daß nach der Eingabe der "Textboxcursor" natürlich am Ende steht.
wenn du jetzt die Textbox anklickst, dann versucht Excel, diese "Cursor-Postion" in den Sichtbaren Bereich zu setzen, dh. die Cursorpostion muss schon gleich nach der Eingabe wieder auf 1 gesetzt werden.
um das zu Erreichen, ergänze mal deine Commandbutton-Moacros um diese Befehle:
TextBox1.SetFocus '--- Scrollbar anzeigen
TextBox1.SelStart = 0 '--- Cursor an Anfang setzen
Gruß, Daniel

Anzeige
AW: Cursor springt in Pampa (MultiLine TextBox)
11.08.2008 16:27:37
Kilo
Hallo Daniel, zunächst einmal Danke für Deine Antwort.
Mir ist bekannt, dass das Aktivieren einer TextBox (wie auch immmer: anklicken, SetFocus-, Change- etc. Ereignis) den Cursor an die letzte Stelle innerhalb der Box setzt. Die Möglichkeiten der "Manipulation" über SelStart, Sel Lenght, SelText usw. sind mir sehr vertraut, bringen mich aber in diesem Fall nicht weiter.
Ich weiß nicht ob, Du mal mein Beispiel angeschaut hast. (Der 1. Link funktioniert nicht, weil die Klammer mit im Explorer auftaucht, aber der 2. geht) Da wird mein Problem sehr deutlich.
Man klickt eine Textstelle an, landet aber (um die entsprechenden Zeilen, die ohne Nutzung der Scrollbar vorhanden sind) nach unten versetzt.
Was ich suche ist die Möglichkeit, den Cursor wirklich da zu plazieren, wo man innerhalb der TextBox hinklickt.
Ggf. mit "Send- .... " o.ä. Befehlen, die verhindern, dass beim Aktivieren der TextBox der Cursor immer automatisch erstmal an der letzten Textstelle steht.
Ich habe in diesem Zusammenhang vor einigen Monaten mal einen Beitrag gelesen, wo mit Send oder ähnlichen Befehlen zum Beispiel das Auslösen des Click-Ereignissses "umschifft" wird. Sowas suche ich, um in meinem Fall den Cursor korrekt zu plazieren. Aber da ist mein Latein eine einzige Flatline!
Gruß Michael

Anzeige
AW: Cursor springt in Pampa (MultiLine TextBox)
11.08.2008 18:51:28
Daniel
Hi
und ich weiß nicht, ob du meine Lösung mal ausprobiert hast.
Ich habs zumindest gemacht und finde schon, daß sie das Problem auch genau so löst, wie du dir das wünscht:
- der Scrollbalken ist sofort sichtar (nicht erst nach dem ersten draufklicken)
- der Cursor ist wirklich an der Stelle, wo man auch draufklickt.
das Problem bei Exel ist, daß es beim Aktivieren der Textbox erst die aktuelle Cursorposition in den Sichtbaren bereich verschiebt und dann den cursor an die Bildschirmposition des Mauszeigers.
Gruß, Daniel

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige