VB-Homepage Tipp 389

Übername von Eingaben in Combobox,
nur wenn Eintrag noch nicht vorhanden

Wieder ein Tipp, der auf eine Anfrage zurückgeht und da es ja nie nur einen gibt, der nach so einer Lösung sucht, soll es die Antwort als Tipp geben.

Aufgabenstellung :
User soll eine Eingabe in eine Textbox machen und nach dem Beenden der Eingabe, soll dieser in einer Combobox zur Auswahl stehen. Übernommen werden soll die Eingabe aber nur, wenn der Eintrag noch nicht vorhanden ist.

Kurzer Rede, kurzer Tipp.
Zum Umsetzen des Tipps benötigen Sie auf Ihrer Form eine Combobox (Combo1) und eine Textbox (Text1). Definieren Sie die Combobox in der Style Eigenschaft als DropDown-Liste.

Realisierung :
Wieder bedienen wir uns, der Text1_KeyPress(KeyAscii As Integer) Methode
der Textbox. diese tut nichts, so lange nicht die ENTER Taste gedrückt wird, die Texteingabe also beendet ist.

Text1_KeyPress

'Variable zur Auswertung, ob Eintrag schon existiert oder nicht
Dim wert_existiert_schon As Boolean

'wurde ENTER Taste gedrückt
If KeyAscii = 13 Then

   'zurücksetzen der Variable
   wert_existiert_schon = False

   'For - Next Schleife zum Überprüfen aller vorhanden Combobox Einträge
   For i = 0 To Combo1.ListCount - 1

      'existiert der Eintrag schonmal
      If UCase(Text1.Text) = UCase(Combo1.List(i)) Then

         'Eintrag existiert schon, Variable auf True setzen
         wert_existiert_schon = True

      End If

   Next i

   'Wenn Variable noch auf False gesetzt ist, existiert der Eintrag noch nicht ...
   If wert_existiert_schon = False Then

      '... und wird zur Combobox hinzugeführt
      Combo1.AddItem Text1.Text

   End If

   'Eingabe zurücksetzen
   Text1.Text = ""

End If


Tipp-Download

Quelle :

Zurück zur Übersichtsseite