Thema Datum  Von Nutzer Rating
Antwort
Rot Listbox füllen
20.02.2021 16:46:53 Volker
NotSolved
20.02.2021 17:23:50 Trägheit
NotSolved
20.02.2021 17:39:58 Gast68114
Solved
20.02.2021 17:48:40 Trägheit
NotSolved

Ansicht des Beitrags:
Von:
Volker
Datum:
20.02.2021 16:46:53
Views:
507
Rating: Antwort:
  Ja
Thema:
Listbox füllen

Hallo zusammen.

ich habe eine Tabelle mit 10 Spalten (A bis J) in der Spalte i suchen ich nach einem Text und lese die Zeilen der Tabelle mit den gleichen Suchtext in eine Listbox ein. Das fonktioniert soweit gut wenn aber nur "eine" Zeile mit dem Suchtext gefunden wird diese ganze Zeile in der Listbox in Spalte 1 eingetragen untereinander sie sollte aber in einer Zeile der Listbox stehen (nebeneinander). Suchkriterium wird über eine Combobox ausgewählt.

wie kann ich das verhindern oder ändern?

Private Sub CommandButton1_Click()
    ' Einlesen der Exceldaten in die Listbox1
    Dim avntValues As Variant
    Dim astrOutput() As String, strSearch As String
    Dim ialngRow As Long, ialngColumn As Long
    Dim ialngCounter As Long
    
    Dim AppExcel  As Object
    Dim Pfad As String
    Dim Datei As String
    Dim arrWerte  As Variant
    
    ' Pfadangabe der Quelldatei wird bei der Inizialisierung des Formulas übergeben
    Pfad = Me.TextBox1.Value
    Datei = Me.TextBox2.Value
    
    On Error GoTo Fehler1
    
    Set AppExcel = GetObject(Pfad & Datei)
    
    arrWerte = AppExcel.Sheets("Tabelle1").[A2:J200]
    ListBox1.List = arrWerte
    AppExcel.Close False
    Set AppExcel = Nothing
    
    
    If ComboBox1.ListIndex > -1 Then

        strSearch = ComboBox1.Text
        avntValues = arrWerte

        ReDim astrOutput(LBound(avntValues, 2) To UBound(avntValues, 2), _
            LBound(avntValues, 1) To UBound(avntValues, 1))

        For ialngRow = LBound(avntValues, 1) To UBound(avntValues, 1)

            If CStr(avntValues(ialngRow, 9)) = strSearch Then

                ialngCounter = ialngCounter + 1

                For ialngColumn = LBound(avntValues, 2) To UBound(avntValues, 2)

                    astrOutput(ialngColumn, ialngCounter) = CStr(avntValues(ialngRow, ialngColumn))

                Next
            End If
        Next

        ReDim Preserve astrOutput(LBound(avntValues, 2) To UBound(avntValues, 2), _
            LBound(avntValues, 1) To ialngCounter)

        'Listbox1 formatieren
        With ListBox1
            .ColumnHeads = True
            .Font.Size = 10
            .ColumnWidths = "40;70;80;80;70;70;80;100;100;35"
            .Clear
            .ColumnCount = UBound(astrOutput, 1)
            .List = WorksheetFunction.Transpose(astrOutput)
        End With
        
        'Bild einblenden in Userform
        Image1.Visible = True

    Else
        MsgBox "Erst einen Suchbegriff auswählen.", vbExclamation, "Hinweis"
    End If
    
    Exit Sub
Fehler1:
     MsgBox Err.Description
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Listbox füllen
20.02.2021 16:46:53 Volker
NotSolved
20.02.2021 17:23:50 Trägheit
NotSolved
20.02.2021 17:39:58 Gast68114
Solved
20.02.2021 17:48:40 Trägheit
NotSolved