Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
608to612
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listbox Multiselectfunktion

Listbox Multiselectfunktion
07.05.2005 11:33:14
Basti
Hallo zusammen,
ich habe folgenden Code

Private Sub ListBox6_Click()
Dim Zielanzahl, Zeiger As Long
Dim Beschreibung As String
Dim Fundort As Range
Worksheets(ComboBox1.ListIndex + 1).Activate
ListBox3.Clear
ListBox4.Clear
ListBox5.Clear
Beschreibung = ListBox6.Value
Set Fundort = Range("f:f").Find(Beschreibung)
Grundindex = Fundort.Offset(0, -1).Value
Zielanzahl = Cells(Rows.Count, 7).End(xlUp).Row
For Zeiger = 5 To Zielanzahl
If InStr(Cells(Zeiger, 7), Grundindex) = 1 Then
ListBox3.AddItem Cells(Zeiger, 8).Value
End If
Next
End Sub

damit erreiche ich das in Listbox 3 bestimmte Ziele (je nach Grund den ich in Listbox6 anwählen kann) aus einer Tabelle ausgelesen werden. Das funktioniert auch prima wenn ich Multiselect ausstelle
jetzt möchte ich aber für die Listbox6 die Multiselectfunktion Multi setzen und erreichen das in Listbox3 alle Ziele gleichzeitig aufgeführt werden wenn ich mehrere Gründe angebe.
Hat jemand eine Idee. Da ich in VBA nicht so gut bin und mir den Code nur mit fremder Hilfe erstellen konnte wäre ich für konkretere Vörschläge dankbar
Gruß Basti

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox Multiselectfunktion
07.05.2005 11:39:41
Rudi
Hi,
gute Gelegenheit deine Kenntnisse zu verbessern. Schau dir in der Hilfe die
Selected-Eigenschaft an.
mfg Rudi
AW: Listbox Multiselectfunktion
07.05.2005 11:50:09
Basti
Hallo,
vielen Dank das ist genau die konkrete Hilfe die ich mir vorgestellt hatte. Dann muss ich eben weiterhin in die Hilfe starren, sehr wahrscheinlich ohne Ergebnis
Gruß Basti
AW: Listbox Multiselectfunktion
07.05.2005 14:02:38
Heiko
Hallo Basti,
wenn ich ehrlich bin habe ich deine Frage nicht ganz verstanden, wenn du aber bei einer MultiSelect Listbox die gewählten Einträge ausgeben willst, dann geht das z.B. so.
Listbox 3 spaltig, Name LD_Dateien, Ausgabe der gewählten Eintäge.

Private Sub CommandButton2_Click()
Dim I As Integer
' Ausgabe der gewählten Einträge in Listbox LD_Dateien. Listbox 3 spaltig.
For I = 0 To LD_Dateien.ListCount - 1
If LD_Dateien.Selected(I) = True Then
MsgBox LD_Dateien.List(I, 0) & "  " & LD_Dateien.List(I, 1) & "  " & LD_Dateien.List(I, 2)
End If
Next I
End Sub

Gruß Heiko
PS: Rückmeldung wäre nett
Anzeige
AW: Listbox Multiselectfunktion
07.05.2005 14:19:09
Basti
Hallo Heiko,
das war nicht ganz das was ich meinte, ist aber auch echt schwer zu verstehen denke ich.
Also ich habe eine Spalte in der ich mehrere Sachen untereinanderschreibe. Diese sind durchnummeriert.
also zB 1. Fahrzeug, 2. Möbel
Sie werden in der Listbox6 ausgelesen
in einer weiteren Listbox (hier LB3) möchte ich die Bezüge auslesen lassen also wenn ich 1. Fahrzeug wähle dann soll da 1.1 Auto, 1.2 Fahrrad, 1.3 Bus usw. erscheinen
das funktioniert so mit dem Code oben
jetzt möchte ich aber Fahrzeuge und!!!! Möbel anwählen können so das in der Listbox3 dann nicht nur 1.1, 1.2, 1.3 erscheint sondern wenn ich mittels multiselect Möbel auch noch anwähle dann zusätzlich !!! 2.1, 2.2 usw in Listbox3 ausgelesen werden
ich hoffe das ich mich einigermaßen verständlich machen konnte
Gruß Basti
Anzeige
AW: Listbox Multiselectfunktion
07.05.2005 14:50:15
Heiko
Hallo Basti,
Bahnhof ?!
Sehe dein Problem nicht, würde dir vorschlagen das nochmal genauer zu beschreiben und ne Beispielmappe hochzuladen. Sonst wird das wohl nichts mit Hilfe hier.
Ich bin jetzt weg und markiere die Frage darum mal als offen.
Gruß Heiko
AW: Listbox Multiselectfunktion
07.05.2005 15:12:16
Basti
Hallo,
hab mal eine Beispieldatei hochgeladen unter:
https://www.herber.de/bbs/user/22260.xls
dort findet ihr auch nochmal eine Beschreibung des Problems
Gruß Basti
AW: Listbox Multiselectfunktion
07.05.2005 15:43:59
Nepumuk
Hallo Basti,
da brauche ich keine Mustermappe dazu. Alles was du benötigst, wurde schon veröffentlicht. Du musst es nur zusammenbauen. Ok, in einer Zeile muss etwas geändert werden, aber ein bisschen könntest du dich auch anstrengen.


Private Sub ListBox6_Click()
    Dim As Integer
    Dim Zielanzahl As Long, Zeiger As Long
    Dim Beschreibung As String
    Dim Fundort As Range
    Worksheets(ComboBox1.ListIndex + 1).Activate
    ListBox3.Clear
    ListBox4.Clear
    ListBox5.Clear
    For I = 0 To ListBox6.ListCount - 1
        If ListBox6.Selected(I) = True Then
            Beschreibung = ListBox6.List(I)
            Set Fundort = Range("f:f").Find(Beschreibung)
            Grundindex = Fundort.Offset(0, -1).Value
            Zielanzahl = Cells(Rows.Count, 7).End(xlUp).Row
            For Zeiger = 5 To Zielanzahl
                If InStr(Cells(Zeiger, 7), Grundindex) = 1 Then
                    ListBox3.AddItem Cells(Zeiger, 8).Value
                End If
            Next
        Next
End Sub


Gruß
Nepumuk
Anzeige
kleiner Fehler !!
07.05.2005 15:46:28
Nepumuk
So ist's richtig:


Private Sub ListBox6_Click()
    Dim As Integer
    Dim Zielanzahl As Long, Zeiger As Long
    Dim Beschreibung As String
    Dim Fundort As Range
    Worksheets(ComboBox1.ListIndex + 1).Activate
    ListBox3.Clear
    ListBox4.Clear
    ListBox5.Clear
    For I = 0 To ListBox6.ListCount - 1
        If ListBox6.Selected(I) = True Then
            Beschreibung = ListBox6.List(I)
            Set Fundort = Range("f:f").Find(Beschreibung)
            Grundindex = Fundort.Offset(0, -1).Value
            Zielanzahl = Cells(Rows.Count, 7).End(xlUp).Row
            For Zeiger = 5 To Zielanzahl
                If InStr(Cells(Zeiger, 7), Grundindex) = 1 Then
                    ListBox3.AddItem Cells(Zeiger, 8).Value
                End If
            Next
        End If
    Next
End Sub


Gruß
Nepumuk
Anzeige
AW: kleiner Fehler !!
08.05.2005 12:25:39
Basti
Hallo Nepumuk, wenn ich mich nicht anstrengen würde hätte ich das ganze Teil schon hingeschmissen ;-)
Und jetzt wird mir wahrscheinlich gleich der Kopf abgeschlagen aber der Code funktioniert nicht, zumindest nicht wenn ich die Multiselect funktion für Listbox6 wähle, mit Einfachauswahl geht es ganz normal wie vorher auch.
Ich könnte natürlich auch einfach den Teil Listbox3.clear löschen dann kann ich alles durchklicken und alles erscheint schön untereinander allerdings verliere ich dann ja die Markierung in Listbox6 und das ist schlecht den ich will ja später alles markierte auch mal wo eintragen
Gruß Basti
Anzeige
AW: kleiner Fehler !!
08.05.2005 13:59:14
Nepumuk
Hallo Basti,
wenn du die Multiselect - Eigenschaft wirklich nutzen willst, dann darf die Listbox nicht auf das Click - Ereignis reagieren. Dann musst du einen Button benutzen, der nach dem treffen der Auswahl, dies abarbeitet.
Gruß
Nepumuk
AW: kleiner Fehler !!
08.05.2005 14:39:30
Basti
Hmm, da hast du sehr wahrscheinlich recht. Ich werde mal noch etwas rumbasteln. Vielleicht bekomm ich es ja hin.
Gruß und vielen Dank für deine Hilfe, Basti

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige