Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
880to884
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
880to884
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Userform in 2 Dateien suchen
28.06.2007 17:12:00
Hams
Hallo , ich habe ein UserForm in dem ich nach einem Namen suche der in der Spalte E des Tabellenblattes "Daten erfassen" in der Datei DATEN_27.xls steht.
Er listet alles wunderbar auf und ich kann dann den gewünschten Namen anklicken und alles wird so weiterverarbeitet wie ich es möchte.
Nur jetzt muss er in einer weiteren Datei die DATEN_24 heisst ( Tabellenblatt und Spalte sind gleich )
ebenfalls alles suchen und die Fundstellen beider DATEN untereinander auflisten.
Kann mir jemand dabei helfen . ich verzeifel :(
Hier das funktionierende Skript das nur in der ersten Datei sucht
Danke im Voraus
Hans
  • 
    Private Sub cmdSearch_Click()
    Dim rng As Range
    Dim sFirst As String
    Dim i As Integer
    ListBox1.Clear
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E").Find(What:= _
    txtSearch, LookIn:=xlValues, _
    LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E").FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    Else
    ListBox1.AddItem "Nichts gefunden!"
    End If
    End Sub
    


  • 3
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Userform in 2 Dateien suchen
    28.06.2007 21:00:27
    Peter
    Hallo Hans,
    da ich mir deine Dateien nicht nachbauen kann (oder will) hier mein ungetesteter Vorschlag.
    Gruß Peter
    
    Private Sub cmdSearch_Click()
    Dim rng As Range
    Dim sFirst As String
    Dim i As Integer
    ListBox1.Clear
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E") _
    .Find(What:=txtSearch, LookIn:=xlValues, LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E"). _
    FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    End If
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten_24").Range("E:E").Find(What:= _
    txtSearch, LookIn:=xlValues, _
    LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten_24").Range("E:E").FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    Else
    If ListBox1.ListCount = 0 Then
    ListBox1.AddItem "Nichts gefunden!"
    End If
    End If
    End Sub
    


    Anzeige
    AW: Userform in 2 Dateien suchen
    30.06.2007 22:27:36
    Hans
    Also wenn ich das Script so mache wie unten beschrieben ,
    Listet er mir die Fundstellen aus der Datei Daten_24.xls und Daten_27.xls untereinander auf. Das funktioniert gut.
    Nun wähle ich eine der Ergebnisse an.
    Die Zahl die in dieser Zeile Als Erstes steht soll dann in das Feld mit dem Namen "nr" in der Datei Daten.xls geschrieben werden.
    Kann mir hier jemand weiter helfen?
  • 
    Private Sub cmdSearch_Click()
    Dim rng As Range
    Dim sFirst As String
    Dim i As Integer
    ListBox1.Clear
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E") _
    .Find(What:=txtSearch, LookIn:=xlValues, LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E"). _
    FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    End If
    Set rng = Workbooks("DATEN_24.xls").Worksheets("Daten erfassung").Range("E:E").Find(What:=  _
    _
    txtSearch, LookIn:=xlValues, _
    LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_24.xls").Worksheets("Daten erfassung").Range("E:E"). _
    FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    Else
    If ListBox1.ListCount = 0 Then
    ListBox1.AddItem "Nichts gefunden!"
    End If
    End If
    End Sub
    


  • Anzeige
    AW: Userform in 2 Dateien suchen
    30.06.2007 22:44:50
    Hans
    Also wenn ich das Script so mache wie unten beschrieben ,
    Listet er mir die Fundstellen aus der Datei Daten_24.xls und Daten_27.xls untereinander auf. Das funktioniert gut.
    Nun wähle ich eine der Ergebnisse an.
    Die Zahl die in dieser Zeile Als Erstes steht soll dann in das Feld mit dem Namen "nr" in der Datei Daten.xls geschrieben werden.
    Kann mir hier jemand weiter helfen?
  • 
    Private Sub cmdSearch_Click()
    Dim rng As Range
    Dim sFirst As String
    Dim i As Integer
    ListBox1.Clear
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E") _
    .Find(What:=txtSearch, LookIn:=xlValues, LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_27.xls").Worksheets("Daten erfassung").Range("E:E"). _
    FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    End If
    Set rng = Workbooks("DATEN_24.xls").Worksheets("Daten erfassung").Range("E:E").Find(What:=  _
    _
    txtSearch, LookIn:=xlValues, _
    LookAt:=xlPart, After:=Range("E65536"))
    If Not rng Is Nothing Then
    sFirst = rng.Address
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " & rng. _
    _
    _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Do
    Set rng = Workbooks("DATEN_24.xls").Worksheets("Daten erfassung").Range("E:E"). _
    FindNext( _
    After:=rng)
    If rng.Address = sFirst Then Exit Do
    ListBox1.AddItem rng & " , " & rng.Offset(0, 1) & " , " & rng.Offset(0, 3) & " | " &  _
    _
    rng. _
    Offset(0, 4) & " " & rng.Offset(0, 5) & " | " & rng.Offset(0, -4), i
    ListBox1.List(i, 1) = rng.Row
    i = i + 1
    Loop
    Else
    If ListBox1.ListCount = 0 Then
    ListBox1.AddItem "Nichts gefunden!"
    End If
    End If
    End Sub
    


  • Anzeige

    300 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige