Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1964to1968
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

Alle Zeilen mit bestimmten Inhalt kopieren

Alle Zeilen mit bestimmten Inhalt kopieren
27.02.2024 09:01:24
Timo
Hallo zusammen,

ich probiere jetzt schon eine ganze Weile herum und ich tue mich sehr schwer.

Ich möchte das Spalte "B" nach dem Wort "GES" durchsucht wird und wenn gefunden, die komplette Zeile einfach nur kopiert wird. Diese möchte ich in einer anderen Tabelle einfügen.

Mit diesem Code, den ich mir aus Schnipseln zusammen gefummelt habe, markiert er nur eine Zeile und ich komme nicht darauf warum.
Und bitte nicht lachen, ich versuche mir das einfach irgendwie beizubringen, was aber nicht ganz so easy ist. :)
Könnt ihr mir bitte helfen?

With Worksheets("Import")

lz1 = .Cells(Rows.Count, 1).End(xlUp).Row
Application.ScreenUpdating = False
For Each BC In .Range("B1:B" & lz1)
If BC = "GES" Then
.Cells(BC.Rows.Count, 1).Resize(1, 14).Copy
End If
Next BC
End With


Vielen Dank und Gruß
Timo

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

Betreff
Datum
Anwender
Anzeige
AW: Alle Zeilen mit bestimmten Inhalt kopieren
27.02.2024 09:17:59
daniel
Hi
mit BC.Rows.Count zählst du die Zeilen des Zellbereichs BC und das ist immer 1, weil BC ja per Definition nur eine Zelle ist.
Du kopierst also immer nur der Zeile 1 auf dem Tabellenblatt.
du brauchst hier BC.Row, weil du die Zeilennummer der Zelle brauchst, nicht die Anzahl der Zeilen

einfacher ist es, wenn du den Zellbereich direkt über BC ermittelst:
BC.Offset(0, -1).Resize(1, 14).Copy

außerdem fehlt in deinem Code noch das Einfügen des Kopierten Bereichs

Gruß Daniel
AW: Alle Zeilen mit bestimmten Inhalt kopieren
27.02.2024 10:00:09
Timo
Hallo Daniel,

ich bekomme es einfach nicht hin. Auch mit Offset nicht.
Es wird jetzt immer nur der letzte Eintrag mit dem Suchkriterium "GES" kopiert, nicht alle.

Das mit dem Einfügen ist richtig, denn ich möchte die Daten nur in die Zwischenablage kopieren, da ich sie in einer anderen Datei einfügen muss.

Viele Grüße
Timo
Anzeige
AW: Alle Zeilen mit bestimmten Inhalt kopieren
27.02.2024 10:12:27
daniel
Hi
mit .copy wird der alte Inhalt der Zwischenablage mit den kopierten Werten überschrieben.
Wenn du in einer Schleife mehrere Zeilen kopierst, dann musst du auch das Einfügen in dieser Schleife nach jedem Kopiervorgang ausführen.
wenn du alle Zeilen gemeinsam in der Zwischenablage haben willst, dann musst du die Liste zuerst nach der Spalte B sortieren, so dass alle Zeilen mit "GES" lückenlos untereinander stehen, dann die erste Zeile mit GES ermitteln und die letzte, dann kannst du den ganzen Bereich kopieren.

ohne Sortieren geht es so, falls die Werte fixwerte sind (keine Formeln)
Columns(2).Replace "GES", True, xlwhole

With Columns(2).SpecialCells(xlcelltypeconstants, 4)
.Value = "GES"
Intersect(.EntireRow, Range("A:N")).Copy
end with


Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige