Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Werkzeug
BildScreenshot zu Werkzeug Werkzeug-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema ListBox
BildScreenshot zu ListBox ListBox-Seite mit Beispielarbeitsmappe aufrufen

ListenBox

Betrifft: ListenBox von: Blacky
Geschrieben am: 17.08.2004 13:35:20

Hallo Leute,
ich habe da ein Kleines Problem un zwar habe ich eine ListenBox mit Hilfe von Formular-Werkzeugen erstellt wie kann ich aus dieser box auf die Aufgelisteten Tabellen zugreifen?
Gruß Blacky

  


Betrifft: AW: ListenBox von: Tim
Geschrieben am: 17.08.2004 14:23:48

Hallo,

ich gehe mal davon aus, die Einträge in der Listbox lauten genauso wie die Namen der Tabellen. Mit folgendem Code müsste es dann klappen:

Private Sub ListBox1_Click()
  Dim name As String
    For i = 0 To ListBox1.ListCount - 1
      If ListBox1.Selected(i) = True Then
        name = ListBox1.List(i)
        Worksheets(name).Activate
      End If
    Next i
End Sub


Diesen musst du im VBA-Editor in die Tabelle einfügen.

Mfg
Tim


  


Betrifft: List Box von: Sterni
Geschrieben am: 17.08.2004 14:34:46

Hallo Tim,
Leider Funktioniert das so nicht weil ich das Makro über Rechtsklick zuordne und er ein Privat dort nicht erkennt.
Gruß Blacky


  


Betrifft: AW: List Box von: Tim
Geschrieben am: 17.08.2004 14:41:00

Könntest du das nochmal ausführlicher erklären?
Worauf machst du den Rechtsklick? Was bewirkt er / soll er bewirken?

Tim


  


Betrifft: List Box von: Blacky
Geschrieben am: 17.08.2004 14:50:31

Hi Tim,
Das ist so ich hab über di Symbolleite Formular die ListBox erzeugt, dann sie mit der Rechten Maustaste angeklikt auf Makro zuweisen gegangen und ihr volgendes Makro Zu gewiesen:
Sub Länder()
    Dim wks As Worksheet
    Dim Ls As String
    For Each wks In Worksheets
        If Not InStr(UCase(wks.name), UCase(Ls)) = ("Keine Angabe") Then
            wks.Select
            wks.Activate
            Exit Sub
        End If
        Next wks
End Sub

Damit sollte es Theoretisch zu den einzelnen Worksheets gelangen die in der Liste abgelegt sind.
Gruß Blacky


  


Betrifft: AW: List Box von: Tim
Geschrieben am: 17.08.2004 15:12:22

Hi Blacky,

ich hätte das anders gemacht. Mein Vorschlag:

Nachdem du die Listbox erstellt hast, klick mit der rechten Taste darauf und wähle "Code anzeigen".
Füge dann meinen Code ein.

Anschließend wähle links im Projekt-Explorer "DieseArbeitsmappe" aus.

Füge dann folgenden Code ein:

Private Sub Workbook_Open()
Dim wks As Worksheet
  For Each wks In Worksheets
    If Not wks.name = "Tabelle1" Then
      Worksheets("Tabelle1").ListBox1.AddItem (wks.name)
    End If
  Next wks
End Sub


Allerdings musst du hier für jedes "Tabelle1" den Namen deiner Tabelle einfügen, in der die Listbox steht.
Die Listbox wird dann bei jedem Öffnen der Datei gefüllt.

Tim


  


Betrifft: AW: List Box von: Blacky
Geschrieben am: 17.08.2004 15:21:11

Hi Tim,
Leider funktioniert das nicht so ich hab beim rechtsklick keienen Code anzeigen ich muß den Code selber über Makros zuweisen die funktioniert nicht wen da Private davor steht
Gruß Blacky


  


Betrifft: AW: List Box von: Tim
Geschrieben am: 17.08.2004 15:45:28

Hi,

komisch, welche Excel-Version hast du?

In den VBA-Editor kommst du auch über das Menü: "Extras" - "Makro" - "Visual Basic Editor". Wähle dann links im Projekt-Explorer die Tabelle aus, in der die Listbox steht und füge den ersten Code von mir ein.

Wähle anschließend "DieseArbeitsmappe" aus. Füge den zweiten Code ein und denk an das Ersetzen von "Tabelle1".

Ich hoffe jetzt klappt es

Gruß
Tim


  


Betrifft: AW: List Box von: Blacky
Geschrieben am: 17.08.2004 15:54:11

Hi Tim,
ich hab die Xp Version
da an dem Platz wo ich zur zeit arbeite ein Nichtprogrammierer normalerweise hockt ist hier alles komisch
Gruß Blacky