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

Nur bestimmte Zeilen aus versch. Blätter kopieren

Nur bestimmte Zeilen aus versch. Blätter kopieren
23.04.2018 18:17:15
Marius
Hallo zusammen,
ich möchte aus verschiedenen Arbeitsblättern NUR diejenigen Zeilen in ein Zusammenfassungs-Blatt kopieren, die in der Spalte G den Wert "doing" aufweisen.
Leider versagen meine VBA-Kenntnisse beim Einbau der Bedingung "nur Wert doing in Spalte G", und ich bitte euch um Hilfe.
Das folgende (gefundeene und abgewandelte) Makro erfüllt den Zweck des Kopierens von Zeilen.
Wie baue ich nun die obengenannte Bedingung ein, so dass aus den verschiedenen Blättern nur Zeilen einkopiert werden, die in der Spalte G den Wert "doing" enthalten?
Danke und viele Grüsse, Marius
**********************
Public Sub Übersicht()
Dim WkSh_Q    As Worksheet ' die Quell-Tabellenblätter - die Herkunftblätter
Dim WkSh_Z    As Worksheet ' das  Ziel-Tabellenblatt   - die Ausgabe
Dim lZeile_Q  As Long      ' der For/Next Schleifen-Index im Quell-Tabellenblatt
Dim lZeile_Z  As Long      ' die Ausgabezeile im Ziel-Tabellenblatt
Application.ScreenUpdating = False ' kein Bildschirm-Update - kein Flackern
Set WkSh_Z = ThisWorkbook.Worksheets("Übersicht") ' das Ausgabeblatt
For Each WkSh_Q In ThisWorkbook.Worksheets   ' über alle Blätter der Mappe laufen
If WkSh_Q.Name  "Übersicht" Then  ' das Ziel-Tabellenblatt ausnehmen
'           ab Zeile 7 bis zur letzten belegten Zelle in Spalte 1 = A
For lZeile_Q = 7 To WkSh_Q.Cells(Rows.Count, 1).End(xlUp).Row
'              ist die Zeile die kopiert werden soll NICHT leer?
If WorksheetFunction.CountA(WkSh_Q.Rows(lZeile_Q))  0 Then
'                 im Ziel-Tabellenblatt die nächste freie Zeile suchen
lZeile_Z = WkSh_Z.Cells(Rows.Count, 1).End(xlUp).Row + 1
'                 ist die erste freie Zeile im Ziel-Tabellenblatt  ZielTabellenblatt kopieren
WkSh_Q.Rows(lZeile_Q).Copy Destination:=WkSh_Z.Rows(lZeile_Z)
End If
Next lZeile_Q
End If
Next WkSh_Q
Application.ScreenUpdating = True  ' den Bildschirm-Update wieder zulassen
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Nur bestimmte Zeilen aus versch. Blätter kopieren
23.04.2018 18:49:53
Günther
Moin Marius,
wenn ich das richtig sehe, kannst du das ganz ohne VBA und wahrscheinlich auch ohne eine einzige Formel erledigen lassen: Power Query, -> http://www.excel-ist-sexy.de/power-query-das-add-in/heißt das Zauberwort. Das ist für "Normalos" gewiss leichter lernbar als VBA.
PowerQuery Filter?
24.04.2018 15:00:31
Marius
Hallo Günther,
danke für den Hinweis mit PowerQuery. Ich denke, die grundsätzlichen Abfragen werde ich hinbekommen, aber wie richte ich die "Filterbedingung" (nur Zeile kopieren WENN Wert in Spate G = "doing"?
Danke und Gruss, Marius
Anzeige
AW: PowerQuery Filter?
24.04.2018 19:25:26
Günther
Moin Marius,
das geht praktisch genau so wie in einer formatierten / intelligenten Tabelle. Du erweiterst die Überschriftzeile durch einen Klick auf das ▼ deaktivierst das Häkchen bei (Alles auswählen) und setzt dann das Häkchen bei doing. Eventuell auch bei Doing, weil PQ case-sensitiv ist.
Falls du wissen willst, ob doing in der Spalte enthalten ist I'm doing this dann filterst du nach Enthält doing. Bei Bedarf kannst du ja dein File hier hochladen.

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige