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

Textmarkierung in Combobox deaktivieren

Forumthread: Textmarkierung in Combobox deaktivieren

Textmarkierung in Combobox deaktivieren
30.09.2005 08:27:39
Martin
Hallo,
ich schlage mich hir mit einem Problem herum, das ich wohl ohne Eure Hilfe nicht mehr lösen werde:
Ich habe eine Combobox in einer UserForm, in der der Benutzer einen COM-Port auswählen soll! Nun habe ich unter den Eigenschaften der Combobox den Style auf "2 - fmStyleDropDownList" gesetzt, damit der Benutzer den Inhalt der Combobox nur auswählen kann ohne die vorgegeben Combobox-Einträge verändern zu können!
Jetzt zu meinem Problem: Sobald der Benutzer den COM-Port ausgewählt hat, ist dieser Eintrag blau markiert (...was einfach nicht schön aussieht!). Ich habe das Bild mal auf meinen Server geladen: http://www.spriebel.de/combobox.gif
Wie kann ich diese Markierung abschalten/verhindern? Gibt es da überhaupt eine Möglichkeit? Ich wäre Euch für Vorschläge sehr dankbar!
Beste Grüße,
Martin
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 09:01:26
Luschi
Hallo Martin,
man muß nur nach der ComboBox-Auswahl den Focus auf ein anderes Steuerelement setzen
Private Sub ComboBox1_Change()
Me.CommandButton1.SetFocus
End Sub

Gruß von Luschi
aus klein-Paris
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 09:24:06
Martin
hallo, danke für den hinweis, geht aber leider auch nicht!
Anzeige
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 09:03:05
harry
hi,
das kannst du lösen, indem du am ende der change-anweisung den fokus auf ein anderes steuerelement der uf setzt.
liebe grüße,
harry
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 09:27:40
Martin
Hallo,
auf diese Idee bin ich auch schon gekommen. Wenn aber z.B. nur ein Eintrag in der Combobox steht, kann der Inhalt der Combobox nicht verändert werden und die change-anweisung wird nicht ausgelöst. ich habe es auch schon mit anderen Ereignis-Auslösern probiert - jedoch leider erfolglos! Trotzdem vielen Dank für den Hinweis!
mfg
martin
Anzeige
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 09:42:03
Peter
Servus,
Matthias G. hat gestern einen guten Einfall bezüglich deines Problems und einer Listbox gehabt. https://www.herber.de/forum/messages/674139.html
Kannst du dir bestimmt anpassen.
MfG Peter
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 10:51:18
Luschi
Hallo Martin,
dann muß ich mich aber fragen, warum Du 1 Combobox benutzt, in der man keine Auswahl treffen kann. Nur der Schönheit willen ist hier dieses Steuerelement fehl am Platz.
Da reicht schon das Label-Steuerelement. Außerdem hast Du die Ausgangslage falsch beschrieben.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 14:03:55
Martin
hallo,
mein notebook hat nur eine com-schnittstelle, mein desktop-computer hat hingegen 2 com-schnittstellen. die anzahl der com-einträge ist also vom jeweiligen computer abhängig!
AW: Textmarkierung in Combobox deaktivieren
30.09.2005 10:55:09
harry
na dann gib bei der .text eigenschaft der combobox einfach "bitte auswählen" ein! dann funkt alles wieder wie gehabt.
Anzeige
;
Anzeige

Infobox / Tutorial

Textmarkierung in Combobox deaktivieren


Schritt-für-Schritt-Anleitung

Um die Textmarkierung in einer Combobox in einer UserForm zu deaktivieren, kannst du folgende Schritte befolgen:

  1. Öffne den VBA-Editor in Excel (Alt + F11).

  2. Füge eine UserForm hinzu, falls noch nicht geschehen.

  3. Platziere eine Combobox auf der UserForm.

  4. Setze den Style der Combobox auf fmStyleDropDownList. Dies kannst du in den Eigenschaften der Combobox tun.

  5. Füge den folgenden VBA-Code in das Code-Modul der UserForm ein:

    Private Sub ComboBox1_Change()
       Me.CommandButton1.SetFocus
    End Sub
  6. Stelle sicher, dass ein CommandButton oder ein anderes Steuerelement vorhanden ist, auf das der Fokus gesetzt werden kann.

Jetzt sollte die Textmarkierung nach der Auswahl eines Eintrags in der Combobox nicht mehr sichtbar sein.


Häufige Fehler und Lösungen

  • Fehler: Die ComboBox bleibt markiert, auch nach dem Setzen des Fokus.

    • Lösung: Vergewissere dich, dass die ComboBox tatsächlich einen anderen Steuerelement-Fokus erhält. Falls keine Auswahl vorhanden ist (z.B. nur ein Eintrag), wird die Change-Ereignis nicht ausgelöst. In diesem Fall solltest du ein Platzhaltertext wie "Bitte auswählen" in der Text-Eigenschaft der Combobox verwenden.
  • Fehler: Die ComboBox funktioniert nicht wie gewünscht.

    • Lösung: Überprüfe die Eigenschaften der ComboBox und stelle sicher, dass der Style korrekt gesetzt ist.

Alternative Methoden

Falls das Setzen des Fokus auf ein anderes Steuerelement nicht funktioniert, kannst du auch folgende Alternativen in Betracht ziehen:

  • Verwendung einer ListBox: Anstelle einer Combobox könntest du eine ListBox verwenden, die die Auswahl erleichtert und keine Markierung anzeigt.

  • Verstecken der Combobox: Eine weitere Methode wäre, die Combobox nach der Auswahl auszublenden oder zu deaktivieren, falls die Auswahl nicht mehr geändert werden muss.


Praktische Beispiele

Hier ist ein einfaches Beispiel, um das Problem zu verstehen:

  • Du hast eine UserForm mit einer Combobox, die die COM-Ports auflistet.
  • Der Benutzer wählt einen COM-Port aus, und anstelle dass der Text blau markiert bleibt, wird der Fokus auf einen Button gesetzt, der zur nächsten Aktion führt.
Private Sub ComboBox1_Change()
    Me.CommandButton1.SetFocus
End Sub

Wenn nur ein COM-Port vorhanden ist, kannst du die Text-Eigenschaft der Combobox wie folgt setzen:

Private Sub UserForm_Initialize()
    ComboBox1.AddItem "Bitte auswählen"
    ComboBox1.AddItem "COM1"
    ComboBox1.AddItem "COM2"
End Sub

Tipps für Profis

  • Überlege, ob du den Benutzer durch Tooltips oder Labels über die Auswahlmöglichkeiten in der Combobox informierst.
  • Nutze die Exit-Ereignisse, um weitere Aktionen auszulösen, wenn der Benutzer die Auswahl in der Combobox verlässt.
  • Verwende die ListIndex-Eigenschaft, um zu überprüfen, ob eine gültige Auswahl getroffen wurde, bevor du auf den Fokus eines anderen Steuerelements wechselst.

FAQ: Häufige Fragen

1. Warum bleibt die Auswahl in der Combobox markiert? Die Auswahl bleibt markiert, wenn der Fokus nicht auf ein anderes Steuerelement gesetzt wird. Verwende den Code, um den Fokus zu wechseln.

2. Funktioniert dieser Ansatz in allen Excel-Versionen? Ja, der beschriebene Ansatz sollte in den gängigen Excel-Versionen funktionieren, die VBA unterstützen. Achte darauf, dass die UserForm korrekt konfiguriert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige