Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: ungültiger Bezeichner (Checkbox mit Variable)

ungültiger Bezeichner (Checkbox mit Variable)
15.09.2008 13:24:00
FM
Hallo,
ich baue momentan an einem Skript wo ich die Namen der tabs eines Workbooks auslese und dementsprechend CheckBox namen vergebe. Das sollte so ablaufen:
im ausgewählten Workbook werden die Tabs ausgelesen und dann wird der Checkbox name per Variable definiert. Ich habe 5 Blanko Checkboxes in der Userform die per default aus (visible = false) sind.
Ich hatte mir das dann folgendermassen vorgestellt:
Workbooks(wb_name).Activate ' wb_name = worbook name wenn mehrere offen sind
For i = 1 To Worksheets.Count
cb_zaehler = cb_zaehler + 1
cbcomb = "CB" & cb_zaehler ' die Checkboxes heissen : CB1 - 5
MsgBox cbcomb
cbcomb.Caption = Worksheets(i).Name
cbcomb.Visible = True
Next i
Also Fehlermeldung bekomme ich ungültiger Bezeichner, was ich auch verstehe, weil das objekt "cbcom"
anb sich existiert ja nicht in der Userform. Aber wie kann ich das dann machen ohne jede Checkbox einzeln per If schleife zu befüllen?
Bzw. generelle Frage. Ich hatte das davor über eine Listbox gelöst. Das ist zwar einfacher und schön aber ich hatte nicht die Möglichkeit mehrere Tabs auf einmal auszuwählen und bearbeiten zu lassen, sondern musste jedes mal neu durchlaufen lassen und davor auswählen. Gibt es ein Objekt welches Checkbox artig arbeitet aber per .Additem zu befüllen ist?
Danke im voraus und Gruss
Florian
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW:wenn du doch eine Listbox hast,...
15.09.2008 13:38:58
Chris
... Servus,
und das funktioniert hat, dann stell doch in den Eigenschaften den Multiselect ein.
Und setzte deinen Code in folgende Schleife:
For i = 0 to Listbox1.ListCount -1
If Listbox1.Selected(i) Then
"Dein Makro starten"
End if
Next i
Wenn du das so machst, kannst du mehrere Tabellenblätter auswählen und bearbeiten mit einem einzigen Click. Du musst evtl. deinen Code noch so anpassen, dass sichergestellt ist, dass auch das richtige Sheet bearbeitet wird.
Gruß
Chris
Anzeige
AW: AW:wenn du doch eine Listbox hast,...
15.09.2008 13:44:00
FM
ah vielen Dank. Das mit Multiselect war mir nicht bekannt.
AW: AW:wenn du doch eine Listbox hast,...
15.09.2008 14:06:00
FM
Hallo,
jetzt habe ich bzgl. dessen noch eine zusätzliche Frage.
Ich habe die Listbox jetzt auf extended multiselect. Kann auch meherer auswählen.
Ich würde nun gerne die Auswahl1 in variable 1 schreiben, Auswahl2 in Variable 2 usw..., sprich jeweils den Namen der Tabs von Auswahl 1 ... in eine variable, die ich dann später weiterverwerten kann.
wie kann man das bewerkstelligen?
Anzeige
AW: AW:wenn du doch eine Listbox hast,...
15.09.2008 14:30:00
Rudi
Hallo,
in ein Modul:

Public myListArray()


In der UF z.B.:


Private Sub CommandButton1_Click()
Dim n As Integer, i As Integer
ReDim myListArray(1 To ListBox1.ListCount)
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
n = n + 1
myListArray(n) = ListBox1.List(i)
End If
Next i
ReDim Preserve myListArray(1 To n)
End Sub


Dann hast du die Namen im Array myListArray zur Verfügung.
Gruß
Rudi

Anzeige
AW: AW:wenn du doch eine Listbox hast,...
15.09.2008 14:43:30
FM
danke das hat mein Problem gelöst !

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige