Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

UserForm Listbox





Frage

Hallo Leute ! Ich brauche mal wieder eure Hilfe. Ich habe eine UserForm mit einer ListBox,in welcher die Daten aus "Tabelle1"enthalten sind.Beim Aufruf der Tabelle wird die Listbox aktiviert. Wie muss ich vorgehen wenn ich beim anclicken einer Zeile in der ListBox den Inhalt der gesamten Zeile in "Tabelle2" der aktuellen Arbeitsmappe haben will. Danke im voraus ! Gerd

Antwort 1 von Hajo_Zi

Hallo Gerd,

Private Sub ListBox1_Change()
If ListBox1.Tag <> "" Then Exit Sub
TextBox1 = ListBox1.List(ListBox1.ListIndex, 0)
TextBox2 = ListBox1.List(ListBox1.ListIndex, 1)
TextBox3 = ListBox1.List(ListBox1.ListIndex, 2)
TextBox4 = ListBox1.List(ListBox1.ListIndex, 3)
TextBox5 = ListBox1.List(ListBox1.ListIndex, 4)
TextBox6 = ListBox1.List(ListBox1.ListIndex, 5)
TextBox7 = ListBox1.List(ListBox1.ListIndex, 6)
End Sub

Gruß Hajo

Antwort 2 von Hajo_Zi

Hallo Gerd,

anstelle der Textbox natürlich die Zellbezeichnung.

Gruß Hajo

Antwort 3 von bage

Hallo Hajo_Zi!
Das ganze funktioniert nicht,bekomme Fehlermeldung
Eigenschaft List kann nicht abgerufen werden
Gerd

Antwort 4 von Beverly

Hi Gerd,

versuche es mit diesem Code

    With Worksheets("Tabelle2")
        .Cells(1, 1) = ListBox1.List(ListBox1.ListIndex, 0)
        .Cells(1, 2) = ListBox1.List(ListBox1.ListIndex, 1)
        .Cells(1, 3) = ListBox1.List(ListBox1.ListIndex, 2)
    End With


Bis später,
Karin

Antwort 5 von bage

Hallo Karin
Das ganze funktioniert auch so nicht,bekomme weiterhin Fehlermeldung
Eigenschaft List kann nicht abgerufen werden
Mit diesem Code werden die Tabellendaten in die Listbox geladen .

Private Sub UserForm_Initialize()

ListBox1.ColumnCount = 20
'ListenFeld1.SpalteAnzahl = 20
ListBox1.RowSource = "a1:y60"
'ListenFeld1.ZeileQuelle = "a1:y60"
ListBox1.BoundColumn = 0
'ListenFeld1.verbundeneSpalte = 0
'(gebundeneSpalte)
End Sub
Gerd

Antwort 6 von Beverly

Hi Gerd,

es ist immer schwierig, eine Arbeitsmappe nachzubauen, weil der Nachbau nie identisch mit dem Original ist. Lade deine Arbeitsmappe doch z.B. unter diesem Link (für 100 Tage) hoch http://uploadagent.de/. Die Linkadresse, die du dort erhältst, kopiere sie in einen Beitrag hier. Dann ist es einfacher, das alles nachzuvollziehen,

Bis später,
Karin

Antwort 7 von bage

Hallo Karin
Hier der gewünschte Link
http://www.uploadagent.de/files/1174235989/Kfz- Daten.xls


Gerd

Antwort 8 von Beverly

Hi Gerd,

ich habe mal in das Click Ereignis des UserForms Kfz folgenden Code eingefügt:

' neu eingefügter Code für Listbox
Private Sub ListBox1_Click()
    Dim loLetzte As Long
    With Worksheets("Tabelle2")
        loLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 2)), .Cells(.Rows.Count, 2).End(xlUp).Row, .Rows.Count)
        .Cells(loLetzte + 1, 1) = ListBox1.List(ListBox1.ListIndex, 0)
        .Cells(loLetzte + 1, 2) = ListBox1.List(ListBox1.ListIndex, 1)
        .Cells(loLetzte + 1, 3) = ListBox1.List(ListBox1.ListIndex, 2)
        .Cells(loLetzte + 1, 5) = ListBox1.List(ListBox1.ListIndex, 3)
        .Cells(loLetzte + 1, 6) = ListBox1.List(ListBox1.ListIndex, 4)
        .Cells(loLetzte + 1, 7) = ListBox1.List(ListBox1.ListIndex, 5)
        .Cells(loLetzte + 1, 8) = ListBox1.List(ListBox1.ListIndex, 6)
    End With
End Sub


Bei Klick auf eine Zeile der ListBox werden die Werte nach Tabelle2 in die erste freie Zeile übertragen.
Die Zuordnung der Spalten der ListBox zu den einzelnen Spalten der Tabelle2 musst du entsprechend anpassen.

Bis später,
Karin

http://www.uploadagent.de/files/1174242198/RE_Kfz_Daten.xls

Antwort 9 von bage

Hallo Karin
Mit dem Ansatz komme ich bestimmt weiter
Danke Gerd

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: