Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellen durchsuchen und zeilenweise kopieren

Tabellen durchsuchen und zeilenweise kopieren
28.01.2005 07:57:54
rudolf
hallo forum
ich versuche ein problem zu lösen, schaffe es aber nicht.
ich habe eine arbeitsmappe mit vielen tabellenblätter.
jetzt möchte ich alle blätter nach einem namen, der im blatt
"zusammenfassung" in zelle "D1" steht durchsuchen.
falls in den blättern der entsprechende name in spalte "E" gefunden wird,
soll die entsprechende zeile in das blatt "zusammenfassung" kopiert werden.
der name kann natürlich öfters vorkommen.
herzlichen dank für eure hilfe !!
kiepetz rudolf
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellen durchsuchen und zeilenweise kopieren
Harald
Hallo Rudolf,
Probier mal:

Sub test()
Dim Tabelle As Worksheet
Dim Name As String
Dim Zeile As Long
Dim firstAddress As String
Dim Suchzelle As Range
Zeile = 2
Name = Worksheets("Zusammenfassung").Range("D1").Text
For Each Tabelle In ActiveWorkbook.Worksheets
If Tabelle.Name <> "Zusammenfassung" Then
Tabelle.Activate
With Tabelle.Range("E:E")
Set Suchzelle = .Find(Name, LookIn:=xlValues)
If Not Suchzelle Is Nothing Then
firstAddress = Suchzelle.Address
Do
Rows(Suchzelle.Row).Select
Selection.Copy
ActiveSheet.Paste Destination:=Worksheets("Zusammenfassung").Range(Zeile & ":" & Zeile)
Zeile = Zeile + 1
Set Suchzelle = .FindNext(Suchzelle)
Loop While Not Suchzelle Is Nothing And Suchzelle.Address <> firstAddress
End If
End With
End If
Next Tabelle
End Sub

Gruß Harald
Anzeige
AW: Tabellen durchsuchen und zeilenweise kopieren
28.01.2005 09:11:16
rudolf
hallo harald
herzlichen dank für deine hilfe.
eine bedingung habe ich leider vergessen: das kopieren soll
nicht durchgeführt werden, wenn neben dem namen in spalte "G"
"erledigt" steht.
ansonst habe ich deinen code getestet - funktioniert super.
herzliche grüße
rudolf
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Tabellen durchsuchen und zeilenweise kopieren


Schritt-für-Schritt-Anleitung

Um alle Tabellenblätter in Deiner Excel-Arbeitsmappe nach einem Namen zu durchsuchen und die entsprechenden Zeilen zu kopieren, kannst Du den folgenden VBA-Code verwenden:

  1. Öffne Excel und lade die Arbeitsmappe, die Du bearbeiten möchtest.
  2. Drücke Alt + F11, um den VBA-Editor zu öffnen.
  3. Füge ein neues Modul hinzu, indem Du mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ klickst und „Einfügen“ > „Modul“ auswählst.
  4. Kopiere den folgenden VBA-Code in das Modul:
Sub test()
    Dim Tabelle As Worksheet
    Dim Name As String
    Dim Zeile As Long
    Dim firstAddress As String
    Dim Suchzelle As Range
    Zeile = 2
    Name = Worksheets("Zusammenfassung").Range("D1").Text
    For Each Tabelle In ActiveWorkbook.Worksheets
        If Tabelle.Name <> "Zusammenfassung" Then
            Tabelle.Activate
            With Tabelle.Range("E:E")
                Set Suchzelle = .Find(Name, LookIn:=xlValues)
                If Not Suchzelle Is Nothing Then
                    firstAddress = Suchzelle.Address
                    Do
                        If Suchzelle.Offset(0, 2).Value <> "erledigt" Then ' Überprüfung auf "erledigt"
                            Rows(Suchzelle.Row).Select
                            Selection.Copy
                            ActiveSheet.Paste Destination:=Worksheets("Zusammenfassung").Range(Zeile & ":" & Zeile)
                            Zeile = Zeile + 1
                        End If
                        Set Suchzelle = .FindNext(Suchzelle)
                    Loop While Not Suchzelle Is Nothing And Suchzelle.Address <> firstAddress
                End If
            End With
        End If
    Next Tabelle
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Führe das Makro aus, indem Du auf Entwicklertools > Makros klickst und das test-Makro auswählst.

Mit diesem Code kannst Du alle Blätter in Deiner Arbeitsmappe durchsuchen und die gewünschten Zeilen in das Blatt „Zusammenfassung“ kopieren, solange neben dem Namen in Spalte „G“ nicht „erledigt“ steht.


Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 1004: Die Methode 'Paste' des Objekts 'Worksheet' ist fehlgeschlagen.“

    • Lösung: Stelle sicher, dass Du die Zelle, in die Du einfügen möchtest, korrekt referenzierst. Überprüfe, ob die „Zusammenfassung“ tatsächlich existiert.
  • Fehler: „Objekt nicht gefunden“ oder „Fehler beim Suchen“

    • Lösung: Überprüfe, ob der gesuchte Name in der Zelle „D1“ korrekt eingegeben wurde und ob er in den anderen Blättern tatsächlich existiert.

Alternative Methoden

Wenn Du die Funktionalität ohne VBA nutzen möchtest, kannst Du auch die SVERWEIS-Funktion verwenden, um Daten zu suchen. Allerdings ist dies weniger flexibel als das Durchsuchen aller Blätter, da SVERWEIS nur auf ein bestimmtes Blatt zugreift.


Praktische Beispiele

Angenommen, Du hast eine Arbeitsmappe mit mehreren Blättern und möchtest alle Blätter nach dem Namen „Max Mustermann“ durchsuchen. Setze in die Zelle „D1“ des Blattes „Zusammenfassung“ den Namen „Max Mustermann“ ein. Wenn Du das Makro ausführst, werden alle Zeilen, die in den anderen Blättern den Namen enthalten und nicht „erledigt“ sind, in das Blatt „Zusammenfassung“ kopiert.


Tipps für Profis

  • Nutze die Funktion „Fehlerbehandlung“ in Deinem VBA-Code, um sicherzustellen, dass das Makro auch bei unerwarteten Fehlern stabil bleibt.
  • Du kannst die Suche weiter anpassen, indem Du zusätzliche Bedingungen hinzufügst, um noch spezifischere Ergebnisse zu erzielen.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um nach mehreren Namen zu suchen? Du kannst eine Schleife hinzufügen, die über eine Liste von Namen iteriert, anstatt nur einen Namen aus „D1“ zu verwenden.

2. Funktioniert dieser Code in Excel 365? Ja, der Code ist mit Excel 365 und anderen Versionen kompatibel, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige