Microsoft Excel

Herbers Excel/VBA-Archiv

Combobox mit Arbeitsblätter Namen befüllen | Herbers Excel-Forum


Betrifft: Combobox mit Arbeitsblätter Namen befüllen von: MG_Learning
Geschrieben am: 18.12.2009 11:10:46

Hallo zusammen,

ich möchte mir gern ein paar Einträge ersparen und per Combobox selektierbar machen!

Wie kann ich per VBA eine Combobox mit den Namen der Arbeitsblätter meiner Exceldatei befüllen?
Ich habe vier Stück in der Datei, der erste Blattname soll nicht erfasst werden, nur die Namen der letzten
drei?

Erster Versuch (steht VBA Übersicht Tabelle1):

Private Sub ComboArtikel_Change()

Dim i As Integer
   ComboArtikel.Clear
   For i = 1 To Worksheets.Count
      ComboArtikel.AddItem Worksheets(i).Name
   Next
   ComboArtikel.ListIndex = 0

End Sub
Wie kann ich Tabellenblatt 1 aus der Befüllung rausnehmen und was muss ich eingeben unter "Diese Arbeitsmappe" um die Befüllung zu aktivieren? Derzeit ist Combobox noch leer! :-(

Danke

M.

  

Betrifft: For i = 2 von: Björn B.
Geschrieben am: 18.12.2009 11:14:21

Hallo M.

Du musst dann eben mit dem 2. Blatt anfangen, mit For i = 2 to...

muss ich eingeben unter "Diese Arbeitsmappe" um die Befüllung zu aktivieren
Das kann ich Dir nicht sagen...
Dazu müsste ich wissen, wann das befüllt werden soll.
Beim Öffnen, beim Aktivieren, beim ...

z.B. beim Öffnen:
Private Sub Workbook_Open()
   Dim i As Integer
   ComboArtikel.Clear
   For i = 2 To Worksheets.Count
      ComboArtikel.AddItem Worksheets(i).Name
   Next
   ComboArtikel.ListIndex = 0
End Sub
Gruß
Björn B.


  

Betrifft: AW: Combobox mit Arbeitsblätter Namen befüllen von: MG_Learning
Geschrieben am: 18.12.2009 11:16:54

ja, in Bezug darauf war die Frage blöd, aber wie bekomme ich die Box befüllt?


  

Betrifft: Hä? von: Björn B.
Geschrieben am: 18.12.2009 11:21:30

Was ist denn das Problem?
Mit dem Code, den ich Dir geschickt habe.

Gruß


  

Betrifft: AW: Hä? von: MG_Learning
Geschrieben am: 18.12.2009 11:28:15

Entschuldige, da haben wir uns gerade zeitlich beim Schreiben überschnitten!
Die Box wird noch immer nicht befüllt! Muss ich den Code in der VBA Ansicht unter
"Tabelle1" oder unter "diese Arbeitsmappe" einfügen? Ich möchte das Feld immer bei Öffnen der Datei befüllt haben und dann soll es auch nicht mehr änderbar sein!

Danke

Martin


  

Betrifft: sag mal... von: Björn B.
Geschrieben am: 18.12.2009 11:34:41

... willst du mich ärgern?
Deine erste Frage:

was muss ich eingeben unter "Diese Arbeitsmappe" um die Befüllung zu aktivieren?

Habe ich Dir beantwortet.
Dann fragst du noch mal, wie es befüllt wird.
Jetzt fragst du das dritte mal.
Was stimmt den mit meinem Code nicht?

Du schreibst doch selbst, "DieseArbeitsmappe", habe ich was davon geschrieben, dass der Code woanders stehen muss?
Ich möchte das Feld immer bei Öffnen der Datei befüllt haben 

Welches Feld??? Du meinst die ComboBox?
Wie man etwas "Beim Öffnen" macht, habe ich dir auch schon im ersten Beitrag beantwortet.
Private Sub Workbook_Open()

Vielleicht liest du mal meine Antworten genauer durch, testest dann, und wenn was nicht funktioniert, dann kannst du noch mal nachfragen...

Gruß
Björn B.


  

Betrifft: AW: sag mal... von: MG_Learning
Geschrieben am: 18.12.2009 12:09:43

Hallo,

Sorry, ich möchte dich bestimmt nicht ärgern! Möchte ja gern Unterstützung!
Es hatte mit dem Code nicht gefunkt, habe jetzt noch das Tabellenblatt angesprochen!

Sheets("Übersicht").ComboArtikel.Clear

Jetzt ist es befüllt!

Kann ich in Abhängikeit dieser Combobox jetzt zwei andere Combobox füllen mit den Daten
aus den Arbeitsblättern! Muss ich die dafür aktivieren vorher!

Danke!


Beiträge aus den Excel-Beispielen zum Thema "Combobox mit Arbeitsblätter Namen befüllen"