Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1692to1696
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
Inhaltsverzeichnis

Suche in anderer XLS-Datei und Ausgabe in Listbox

Suche in anderer XLS-Datei und Ausgabe in Listbox
11.05.2019 13:51:24
Michael
Hallo zusammen,
ich bin VBA-Amateur und diese Seite hat mir schon oft geholfen.
Vielleicht auch dieses mal.
Ich habe eine Exceldatei "Anmeldung.xlsm" mit einer UserForm1 die eine TextBox1, ein CommandButton1 und eine ListBox1 beinhaltet.
Zusätzlich habe ich eine andere Excel-Datei "Daten.xls" mit einer Vielzahl an Daten.
Ich möchte gerne, dass wenn man den CommandButton1 klickt, die Spalte A der Datei "Daten.xls" nach dem Inhalt der TextBox1 durchsucht. Die "Daten.xls" soll dabei nicht für den Anwender sichtbar sein.
Das Ergebnis (können auch mehrere sein) soll in der ListBox1 mit weiteren Werten aus der Zeile angezeigt werden.
Natürlich bin ich nicht ganz unvorbereitet:
Ich habe es bereits geschafft die Suchfunktion zu erstellen. Aktuell wird aber nur die "Anmeldung.xlsm" durchsucht.
Wie bekomme ich es hin, dass die "Daten.xls" durchsucht wird und das für den User unsichtbar?
Such-Funktion:

Private Sub CommandButton1_Click()
Dim c As Range
Dim rngBereich As Range
Dim lngAnzahl As Long
Dim strFirst As String
With Sheets("Tabelle1")
Set rngBereich = .Columns(2)
Set c = rngBereich.Find(TextBox1, LookIn:=xlValues, lookat:=xlPart)
If Not c Is Nothing Then
strFirst = c.Address
Do
ListBox1.AddItem .Cells(c.Row, 1)
lngAnzahl = ListBox1.ListCount
ListBox1.List(lngAnzahl - 1, 1) = .Cells(c.Row, 2)
ListBox1.List(lngAnzahl - 1, 2) = .Cells(c.Row, 3)
ListBox1.List(lngAnzahl - 1, 3) = .Cells(c.Row, 4)
ListBox1.List(lngAnzahl - 1, 4) = .Cells(c.Row, 5)
ListBox1.List(lngAnzahl - 1, 5) = .Cells(c.Row, 6)
ListBox1.List(lngAnzahl - 1, 6) = .Cells(c.Row, 7)
Set c = rngBereich.FindNext(c)
Loop While Not c Is Nothing And c.Address  strFirst
End If
End With
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suche in anderer XLS-Datei und Ausgabe in Listbox
11.05.2019 15:15:48
Nepumuk
Hallo Michael,
Test mal:
Private Sub CommandButton1_Click()
    Dim c As Range
    Dim objWorkbook As Workbook
    Dim lngAnzahl As Long
    Dim strFirst As String
    Set objWorkbook = GetObject(PathName:="H:\0511\Daten.xls") 'Pfad anpassen
    With objWorkbook.Worksheets("Tabelle1").Columns(1)
        Set c = .Find(What:=TextBox1.Text, LookIn:=xlValues, LookAt:=xlPart, MatchCase:=False)
        If Not c Is Nothing Then
            strFirst = c.Address
            Do
                Call ListBox1.AddItem(c.Value)
                lngAnzahl = ListBox1.ListCount - 1
                ListBox1.List(lngAnzahl, 1) = c.Offset(0, 1).Value
                ListBox1.List(lngAnzahl, 2) = c.Offset(0, 2).Value
                ListBox1.List(lngAnzahl, 3) = c.Offset(0, 3).Value
                ListBox1.List(lngAnzahl, 4) = c.Offset(0, 4).Value
                ListBox1.List(lngAnzahl, 5) = c.Offset(0, 5).Value
                ListBox1.List(lngAnzahl, 6) = c.Offset(0, 6).Value
                Set c = .FindNext(c)
            Loop Until c.Address = strFirst
            Set c = Nothing
        End If
    End With
    Call objWorkbook.Close(SaveChanges:=False)
    Set objWorkbook = Nothing
End Sub

Gruß
Nepumuk
Anzeige
AW: Suche in anderer XLS-Datei und Ausgabe in Listbox
12.05.2019 17:30:02
Michael
Hallo Nepumuk,
vielen, vielen,...., vielen lieben Dank für deine Hilfe.
Funktioniert einwandfrei. Du hast mich gerettet.:-)
Gruß Michael

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige