suche über alle Blätter
 |
Betrifft: suche über alle Blätter
von: Peter
Geschrieben am: 27.08.2004 09:31:40
Hallo Excels,
suche einen kleinen VBA-Schnipsel der folgendes können soll.
Ich möchte in einem extra Blatt in A1 einen Suchbegriff eingeben(8Stellige Zahl).
Ab Zeile2 sollen dann die kompletten Zeilen, aus allen Blättern in denen der Suchbegriff vorkommt, aufgelistet werden.
Der Suchbegriff kommt immer nur in SpalteG vor.
Ich habe schon das Forum und das Archiv abgegrast aber leider nichts passendes gefunden.
Wäre toll wenn jemand helfen könnte.
Gruss Peter
Betrifft: AW: suche über alle Blätter
von: Udo
Geschrieben am: 27.08.2004 09:59:00
In der Recherche sind 'zig Treffer zum Thema.
Udo
Betrifft: AW: suche über alle Blätter
von: Peter
Geschrieben am: 27.08.2004 10:05:31
Hi Udo,
dass schon aber nicht wie ich alle gefundenen zeilen auf ein Blatt kopieren kann.
aber trotzdem Danke das du geantwortet hast.
gruss peter
Betrifft: AW: suche über alle Blätter
von: K.Rola
Geschrieben am: 27.08.2004 10:25:48
Hallo,
lad mal eine vorbereitete Beispieldatei hoch. Es sollte auch klar erkennbar sein,
wo der Suchbegriff eingegeben werden soll.
Ich bastle dir die Funktion dann da rein.
Gruß K.Rola
Betrifft: AW: suche über alle Blätter
von: Peter
Geschrieben am: 27.08.2004 11:01:57
Hi K.Rola,
danke für das super Angebot.
Leider kann ich aus irgendwelchen Gründen die Datei nicht auf den Server stellen.
Erhalte immer diese Fehlermeldung:
Fehler beim Datei-UpLoad; Kein Upload möglich
Gruss Peter
Betrifft: AW: suche über alle Blätter
von: Ingo
Geschrieben am: 27.08.2004 11:01:41
Sub finden_und_auflisten()
Dim ws As Worksheet
Dim rng As Range
Dim str As String, ersterstr As String
Dim suchbegriff
suchbegriff = Sheets("Tabelle1").[A1]
For Each ws In ThisWorkbook.Sheets
With ws.Range("G:G")
Set rng = .Find(suchbegriff, LookIn:=xlValues)
If Not rng Is Nothing Then
ersterstr = rng.Parent.Name & ";Zeile " & rng.Row
Do While Not rng Is Nothing And str <> ersterstr
Set rng = .FindNext(rng)
str = rng.Parent.Name & ";Zeile " & rng.Row
Sheets("Tabelle1").[A65536].End(xlUp).Offset(1, 0) = str
Loop
End If
End With
Next ws
End Sub
mfG
Ingo Christiansen
Betrifft: AW: suche über alle Blätter
von: Peter
Geschrieben am: 27.08.2004 11:26:34
Hi Ingo,
ersteinmal Danke.
Da habe ich erst einmal eine Richtung in der ich weiterfummeln kann.
Dein Makro findet zwar in allen Blättern den Suchbegriff, listet aber den Fundort auf.
Ich möchte aber das die gefundene Zeile kommplett kopiert wird.
gruss peter
Betrifft: AW: suche über alle Blätter
von: Ingo
Geschrieben am: 27.08.2004 11:45:32
Sub finden_und_auflisten()
Dim ws As Worksheet
Dim rng As Range
Dim str As String, ersterstr As String
Dim zeile As Integer
Dim suchbegriff
suchbegriff = Sheets("Tabelle1").[A1]
zeile = 2
For Each ws In ThisWorkbook.Sheets
With ws.Range("G:G")
Set rng = .Find(suchbegriff, LookIn:=xlValues)
If Not rng Is Nothing Then
ersterstr = rng.Parent.Name & ";Zeile " & rng.Row
Do While Not rng Is Nothing And str <> ersterstr
Set rng = .FindNext(rng)
str = rng.Parent.Name & ";Zeile " & rng.Row
ws.Rows(rng.Row).Copy
Sheets("Tabelle1").Select
Cells(zeile, 1).Select
ActiveSheet.Paste
zeile = zeile + 1
Loop
End If
End With
Next ws
Application.CutCopyMode = False
End Sub
mfG
Ingo Christiansen
Betrifft: AW: suche über alle Blätter
von: Peter
Geschrieben am: 27.08.2004 11:54:13
Also, das ist ja Wahnsinn.
So schnell und so Gut.
besten Dank und schöne Grüsse
Peter