Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Cursor an Anfang der Combobox stellen

Forumthread: Cursor an Anfang der Combobox stellen

Cursor an Anfang der Combobox stellen
Selina
Hallo VBA - Gemeinde !
kann mir jemand verraten, wie ich bei einer Combox den Cursor immer ganz links platzieren kann ?
Dies brauch ich, da die Texte welche in meine Combobox geladen werden oft über die Combobox-Breite hinausreichen.
ich versuchte es so, geht aber leider nicht:
Me.Controls("ComboBox2").SetFocus
Me.Controls("ComboBox2" & i).CurLine = 0
Zwar wird mir dadurch der Fokus auf die Combobox gesetzt, allerdings bleibt der aktuelle Eintrag dort blau ausgeleuchtet und - der Cursor bleibt nicht links stehen am Textbeginn.
Danke für Eure Hilfe !
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Cursor an Anfang der Combobox stellen
30.08.2011 15:53:56
Beverly
Hi Selina,

ComboBox1.SelStart = 0



AW: Cursor an Anfang der Combobox stellen
31.08.2011 07:08:44
Selina
Hi
danke für die hilfe. werde das nun gleichmal ausprobieren
AW: Cursor an Anfang der Combobox stellen
31.08.2011 12:57:42
Emilio
Das hat nun bestens geklappt. Vielen Dank nochmals !
Anzeige
;
Anzeige

Infobox / Tutorial

Cursor an den Anfang der Combobox setzen in Excel


Schritt-für-Schritt-Anleitung

Um den Cursor in einer ComboBox in Excel VBA immer an den Anfang zu setzen, kannst Du die folgende Schritt-für-Schritt-Anleitung verwenden:

  1. Öffne den Visual Basic for Applications (VBA)-Editor: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Wähle das entsprechende Formular aus: Suche in der Projektansicht nach dem UserForm, in dem sich Deine ComboBox befindet.

  3. Füge den folgenden Code in das entsprechende Ereignis ein: Zum Beispiel könnte dies im UserForm_Activate-Ereignis sein, um sicherzustellen, dass der Cursor beim Aktivieren des Formulars an den Anfang gesetzt wird. Verwende den folgenden VBA-Code:

    Private Sub UserForm_Activate()
       Me.ComboBox1.SetFocus
       Me.ComboBox1.SelStart = 0
    End Sub
  4. Testen: Schließe den VBA-Editor und teste die Anwendung, um sicherzustellen, dass der Cursor bei der Auswahl der ComboBox immer am Anfang steht.


Häufige Fehler und Lösungen

  • Problem: Der Cursor bleibt nicht am Anfang.

    • Lösung: Stelle sicher, dass Du Me.ComboBox1.SelStart = 0 direkt nach dem Setzen des Fokus auf die ComboBox platzierst.
  • Problem: Der aktuelle Eintrag bleibt blau markiert.

    • Lösung: Verwende Me.ComboBox1.SelLength = 0, um die Markierung aufzuheben, wenn Du den Fokus setzt und den Cursor positionierst.

Alternative Methoden

Neben der oben beschriebenen Methode gibt es auch andere Techniken, um den Cursor in einer ComboBox zu positionieren:

  • Mithilfe von Ereignissen: Du kannst den Cursor auch in anderen Ereignissen, wie z.B. ComboBox1_Change, positionieren, um sicherzustellen, dass der Cursor immer am Anfang bleibt, wenn der Benutzer eine Auswahl ändert.

  • Mit einer Schleife: In komplexeren Anwendungen kannst Du eine Schleife verwenden, um den Cursor nach bestimmten Bedingungen an den Anfang zu setzen.


Praktische Beispiele

Hier ist ein Beispiel, wie Du die ComboBox in einem UserForm verwenden kannst:

Private Sub UserForm_Initialize()
    With Me.ComboBox1
        .AddItem "Eintrag 1"
        .AddItem "Eintrag 2"
        .AddItem "Eintrag 3"
    End With
End Sub

Private Sub UserForm_Activate()
    Me.ComboBox1.SetFocus
    Me.ComboBox1.SelStart = 0
End Sub

In diesem Beispiel wird die ComboBox mit drei Einträgen initialisiert und der Cursor wird beim Aktivieren des Formulars an den Anfang gesetzt.


Tipps für Profis

  • Verwendung von Variablen: Du kannst Variablen verwenden, um zu bestimmen, welche ComboBox bearbeitet wird, wenn Du mehrere ComboBoxes in einem Formular hast. Dies erhöht die Flexibilität Deines Codes.

  • Ereignisüberwachung: Überwache andere ComboBox-Ereignisse, um die Benutzererfahrung zu verbessern. Beispielsweise kannst Du den Cursor zurücksetzen, wenn der Benutzer eine bestimmte Auswahl trifft.


FAQ: Häufige Fragen

1. Wie kann ich den Cursor in mehreren ComboBoxes gleichzeitig an den Anfang setzen?
Du kannst einfach den gleichen Code für jede ComboBox im entsprechenden Ereignis hinzufügen oder eine Schleife verwenden, um alle ComboBoxes zu durchlaufen.

2. Funktioniert dieser Code in Excel 365?
Ja, dieser Code funktioniert in Excel 365 sowie in früheren Versionen, die VBA unterstützen. Stelle sicher, dass Du die richtigen Steuerelemente verwendest, um Fehler zu vermeiden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige