Ich habe in einer Userform eine Listbox, die alle Tabellennamen meiner Arbeitsmappe enthält. Diese Tabellennamen sind zusätlich noch mit einem Hyperlink zu einer bestimmten Zelle auf dem jeweiligen Blatt hinterlegt. Klicke ich einen Tabellennamen, wird automatisch im Hintergrund der Userform zu der Zelle gesprungen und das Tabellenblatt somit aktiv.
Anzumerken ist, dass die verlinkten Tabellennamen in einer eigenen Tabelle, nämlich in der letzen der Arbeitsmappe, sind.
Mein Code sieht folgendermaßen aus:
Private Sub ListBox1_Click()
With Me.ListBox1
If .ListIndex -1 Then
Sheets(.List(.ListIndex, 0)).Activate
Range(.List(.ListIndex, 1)).Select
End If
End With
End Sub
Das funktioniert soweit sehr gut.Nun möchte ich aber mehrere Tabellenblätter auf einmal auswählen können. Die Mulitselect Funktion der Listbox funktioniert leider nicht, da ja nicht mehrere Tabellenblätter auf einmal aktiv sein können.
Deswegen möchte ich die die Listbox mit einer For-Schleife durchgehen, mit der geprüft wird, welche Tabellenblätter ausgewählt sind und diese dann nacheinander aktiviert und somit bearbeitet werden können. Ich möchte einfach nicht jedes Tabellenblatt einzeln anklicken müssen.
Mein aktueller Code dazu sieht so aus:
With Me.ListBox1
For x = .ListCount - 1 To 0 Step -1
wert_neu = eingabe
If .Selected(x) = True Then 'also wenn Häckchen gesetzt ist dann ...
Sheets(.List(.ListIndex, 0)).Activate
Range(.List(.ListIndex, 1)).Select
End If
Befehle zur Bearbeitung
Next x
End With
Von den ausgewählten Tabellenblättern wird meistens nur das erste oder das erste und das letzte bearbeitet.Was mache ich falsch?
Danke schon mal!
Gruß,
Tom