Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1860to1864
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
Combobox übernimmt falsche Anzahl Items
04.01.2022 10:52:07
Wintrice
Hallo, ich habe folgendes Problem und konnt leider keinen Beitrag mit einem ähnlichen Problem finden.
Es sollen abhängig von dem Wert in Zelle "A1" entweder 2 oder 3 Items in einer Userform ausgegeben werden. Sollte der Wert größer als 3 sein so sollen Option 2 und Option 3 (2 Items) in der Combobox angezeigt werden. Ansonsten 3 Optionen (3 Items). Der Wert in Zelle "A1" wird über eine andere Userform per Textbox eingelesen.
Nun zu meinem Problem: Die Anzahl der Combobox-Items "hingt" sozusagen etwas nach. Der Startwert von Zelle "A1" beträgt 3. Bis dato kein Problem, es werden 3 Items angezeigt. Tippe ich "4" ein werden immer noch 3 Items angezeigt. Tippe ich darauf nochmal 4 ein, stellt er endlich 2 Items da. Ich muss sozusagen zweimal dasselbe in die Textbox eingeben bevor er die richtige Anzahl Items darstellt.
Habe den Code nochmal nachgebaut, dieser funktioniert problemfrei.. Vielleicht gibt es den ein oder anderen VBA Veteranen, der aus meiner Situation zurückführen kann woran das "hinken" liegen könnte.
Danke schon mal im Vorraus
Code:
Modul: Funktionen
Option Explicit

Public Sub Items2(Combobox As Object, Option1 As String, Option2 As String)
With Combobox
.AddItem Option1
.AddItem Option2
End With
End Sub

Public Sub Items3(Combobox As Object, Option1 As String, Option2 As String, Option3 As String)
With Combobox
.AddItem Option1
.AddItem Option2
.AddItem Option3
End With
End Sub
Userform1:
Option Explicit

Private Sub UserForm_Initialize()
UserForm1.TextBox1.Value = Worksheets("Tabelle1").Range("A1").Value
End Sub

Private Sub TextBox1_Change()
Worksheets("Tabelle1").Range("A1").Value = UserForm1.TextBox1.Value
End Sub

Private Sub CommandButton2_Click()
Unload UserForm1
UserForm2.Show vbModeless
End Sub
Userform2:
Option Explicit

Private Sub UserForm_Initialize()
If Worksheets("Tabelle1").Range("A1").Value > 3 Then
Items2 ComboBox1, "Auswahl 2", "Auswahl 3"
Else
Items3 ComboBox1, "Auswahl 1", "Auswahl 2", "Auswahl 3"
End If
End Sub

Private Sub CommandButton1_Click()
Unload UserForm2
UserForm1.Show vbModeless
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Combobox übernimmt falsche Anzahl Items
04.01.2022 11:28:29
Nepumuk
Hallo Wintrice,
versuch es so:

With Combobox
Call .Clear
.AddItem Option1
.AddItem Option2
.AddItem Option3
End With
Bzw.:

With Combobox
Call .Clear
.AddItem Option1
.AddItem Option2
End With
Gruß
Nepumuk
AW: Combobox übernimmt falsche Anzahl Items
04.01.2022 11:52:07
Wintrice
Danke für den Tipp. Habe es gerade probiert, leider erfolglos. Hab in die zweite Userform jetzt ein Label eingefügt welches den Wert aus der Tabelle auslesen soll. Also den wert der für die If Bedingung wichtig ist. Er gibt prinzipiel den vorherigen Wert aus statt den aktuellen.
Anzeige
AW: Combobox übernimmt falsche Anzahl Items
04.01.2022 11:29:30
Yal
Hallo Wintrice,
Vielleicht davor einen ComboBox.Clear machen...
Addieren heißt eben addieren und nicht ersetzen.
VG
Yal
AW: Combobox übernimmt falsche Anzahl Items
04.01.2022 11:54:02
Wintrice
Hab's leider erfolglos probiert. Komischerweise liest er immer den vorherigen Wert ein, statt den aktuellen.

50 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige