Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA? Fehler 438
#1
Huhu,

ich verzweifel gerade ein wenig.

ich weiß nicht was ich falsch mache.

Ich möchte eine Combobox auf einem Tabellenblatt befüllen (also ohne eine Userform zu nutzen)

Dafür nutze ich folgenden Code, der in die entsprechende Mappe geschrieben ist, wo die Combobox sitzt.
Code:
Private Sub ComboBox1_DropButtonClick()
ComboBox1.RowSource = "Daten!$A$2:" & _
       Worksheets("Daten").Cells(Worksheets("Daten").Rows.Count, 1).End(xlUp).Address
End Sub
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
ComboBox1.RowSource = "Daten!$A$2:" & _
       Worksheets("Daten").Cells(Worksheets("Daten").Rows.Count, 1).End(xlUp).Address
End Sub


Dieser Code funktioniert wunderbar in einer anderen Excel Datei in einer Userform.

Jetzt kommt aber nur der fehler 438. Ich habe mir auch schon Erklärungen zu diesem Fehler durchgelesen, verstehe es aber nicht wirklich, zumindest nicht soweit, das ich den code entsprechend abändern kann.

Nach anderen Codes habe ich auch gesucht und auch einige ausprobiert.



- Excel 2016
Antworten Top
#2
Hallo,

bei einer Combobox in einem Tabellenblatt gibt es die RowSource-Eigenschaft nicht.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Izzy
Antworten Top
#3
Ah, ok.

dann muss ich mit workbook open und Combobox.additem arbeiten.

danke :)
Antworten Top
#4
ok, doch nicht so einfach.

Code:
Private Sub Workbook_Open()
ComboBox1.AddItem "Maske ohne Schwarte"
ComboBox1.AddItem "Maske mit Schwarte"
ComboBox1.AddItem "Innenbäckchen"
ComboBox1.AddItem "Schnauzen"
ComboBox1.AddItem "Bäckchen"
ComboBox1.AddItem "Ohren"
ComboBox1.AddItem "schläfen"
ComboBox1.AddItem "Ohren Muscheln"
End Sub


Fehler:  424 Objekt erforderlich
Antworten Top
#5
Code:
Private Sub ComboBox1_DropButtonClick()
ComboBox1.Clear
ComboBox1.AddItem "Maske ohne Schwarte"
ComboBox1.AddItem "Maske mit Schwarte"
ComboBox1.AddItem "Innenbäckchen"
ComboBox1.AddItem "Schnauzen"
ComboBox1.AddItem "Bäckchen"
ComboBox1.AddItem "Ohren"
ComboBox1.AddItem "schläfen"
ComboBox1.AddItem "Ohren Muscheln"

End Sub

Der Code Funktioniert jetzt
Antworten Top
#6
(08.06.2018, 10:48)Izzy schrieb: ok, doch nicht so einfach.

Code:
Private Sub Workbook_Open()
ComboBox1.AddItem "Maske ohne Schwarte"
End Sub

Fehler:  424 Objekt erforderlich

Da sich der Code im Klassenmodul der Tabelle befindet, fehlt der Verweis auf das Tabellenblatt.

Code:
Private Sub Workbook_Open()

   With Worksheets("Tabelle1").ComboBox1
      .AddItem "Maske ohne Schwarte"
      .AddItem "Maske mit Schwarte"
      .AddItem "Innenbäckchen"
      .AddItem "Schnauzen"
      .AddItem "Bäckchen"
      .AddItem "Ohren"
      .AddItem "schläfen"
      .AddItem "Ohren Muscheln"
   End With
End Sub

Tabellennamen bitte anpassen!
Gruß Stefan
Win 10 / Office 2016
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste