Clever-Excel-Forum

Normale Version: VBA TextBox in Abhängigkeit von ComboBox
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

wie muss ich meinen Code ändern, damit bei Selektion eines Wertes in ComboBox13 der entsprechend passende Wert aus der Bezugstabelle in der TextBox widergegeben wird (eig. wie beim SVERWEIS)?

Code:
Private Sub ComboBox13_Change()
'Pick Up Zusatzkosten
Dim a As Variant
a = Application.Match(ComboBox13, Worksheets("Ex_II.ADD ON").Columns(3), 0)
  If IsNumeric(a) Then
    TextBox22 = Worksheets("Ex_II.ADD ON").Cells(a, 2)
End If
End Sub

Danke schön
Hallo,

was für Werte hast du in der Combobox?

Gruß Werner
Hallöchen,

mal eine andere Frage. Was passiert denn bei Ausführung des Codes? Setze zum Test auch mal einen Haltepunkt und führe den Code anschließend schrittweise aus.
Hi Werner,

in der ComboBox stehen Begriffe in Textform.

Hi André,

es passiert gar nichts. Ich kann in der ComboBox meine Auswahl treffen, aber es wird kein Wert im Textfeld gezeigt. Excel markiert mir dann nur die Zeile gelb..

Code:
Private Sub ComboBox13_Change()
Auch Hallo,

(14.10.2019, 06:54)SteBen schrieb: [ -> ]es passiert gar nichts. Ich kann in der ComboBox meine Auswahl treffen, aber es wird kein Wert im Textfeld gezeigt. Excel markiert mir dann nur die Zeile gelb.

.. und wenn Du die F8-Taste drückst, was passiert dann?
Hi,
dann durchläuft er den Code ohne Fehlermeldung...
Hallo,

und welchen Wert hat die Variable a beim Ablauf des Makros?
Hallo,

der Code müsste so funktionieren.

Dir ist klar was er macht?

-sucht den Begriff aus der Combobox in Spalte 3 © der Tabelle
-bei Fund wird der Wert aus der "Fundzeile" Spalte 2 (B) in der Textbox ausgegeben

Voraussetzung für einen erfolgreichen Fund ist aber, dass der Text aus der Combobox alleine in der Spalte C im Tabellenblatt vorhanden ist.

Beispiel1: Combobox = Tag
             in C3 = Tag
             in B2 = Montag

Ergebnis: Tag wird gefunden und in der Textbox wird Montag ausgegeben

Beispiel2: Combobox = Tag
            in C3 = Der Tag heute
            in B2 = Montag

Ergebnis: Tag wird nicht gefunden - keine Ausgabe in der Textbox

Sollte der Suchbegriff aus der Combobox als Teil eines Textstrings (wie Beispiel 2) gefunden werden, dann mußt du bei der Suche mit Jokerzeichen arbeiten.

Code:
Private Sub ComboBox13_Change()
Dim a As Variant

Me.TextBox22 = ""
a = Application.Match("*" & Me.ComboBox13 & "*", Worksheets("Ex_II.ADD ON").Columns(3), 0)
If IsNumeric(a) Then
   Me.TextBox22 = Worksheets("Ex_II.ADD ON").Cells(a, 2)
End If
End Sub

Ansonsten lade doch mal deine Datei hier hoch.


Gruß Werner
Hi Werner,

danke für Deine Erklärung, das hat mir geholfen!!  Idea

Ich hab' den Bezug falsch verstanden, habe es nun korrigiert & es arbeitet wie gewünscht!

Besten Dank! 

PS: Natürlich auch danke, an die anderen Helfer :)