Excel - Kopieren, wenn der Bedingungsbereich erfüllt ist

Problem

Ich möchte Daten von Blatt zu Blatt kopieren, wenn der Eingabebereich auf einem anderen Blatt erreicht ist

  • Alle meine Daten sind im Blatt "Einfügen" Zeile, G Blatt "Einfügen" hat die Namen von Personen
  • Im Bereich B4: b17 des Blattnamens "Dom" befindet sich die Liste der Namen dieser Mannschaft
  • Wenn die auf Doms Blatt aufgelisteten Namen im Blatt "Einfügen" angezeigt werden, möchte ich, dass diese Zeile in Zeile 75 und höher im Blatt von Dom kopiert wird

Lösung

"Zeile, G-Blatt" einfügen "hat die Namen von Personen"

G kann keine Zeile sein, sondern nur eine Spalte, vorausgesetzt, in der Spalte g musste ich ein Musterblatt anfertigen

Das Einfügeblatt sieht von Spalte A bis H so aus

col.G col H

 Namensdaten a 1 s 2 d 3 f 4 g 5 h 6 

Dom Blatt wird so sein

 col B row4 adgkwryuzcbmnp 

Ich habe Makro geschrieben, starte das Makro und überprüfe, ob das das ist, was du willst. Es wäre hilfreicher gewesen, wenn Sie einen kleinen Auszug aus Beilagen- und Domblättern gegeben hätten. Wenn Sie möchten und das Makro an Ihre Daten anpassen können.

BESSER BEWAHREN SIE DIE ORIGINALDATEI SICHER FÜR DEN RÜCKZUG AUF, WENN ETWAS FALSCH GEHT.

 Untertest () Dim cfind As Range, c As Range, x As String, dest As Range, j As Long j = 1 Mit Arbeitsblättern ("dom") Für jedes c In .Range ("B4: B17") x = c .Value With Worksheets ("Einfügen"). UsedRange Set cfind = .Cells.Find (was: = x, lookat: = xlWhole) Wenn nicht, ist cfind nichts, dann cfind.EntireRow.Copy End With .Range ("A75"). Offset (j, 0) .PasteSpecial j = j + 1 Weiter c Ende mit Ende Unter Unter Rückgängig () Mit Arbeitsblättern ("dom") Bereich (.Bereich ("A75"), .Zellen (Zeilenanzahl, "A") )). EntireRow.Delete End With End Sub 

Vielen Dank an Venkat für diesen Tipp.

Vorherige Artikel Nächster Artikel

Top-Tipps