Macro / VBA benötigt, um zu finden, zuzuordnen, zu kopieren / einzufügen

  • Problem
  • Lösung
  • Hinweis

Problem

Ok, ich habe gesucht und gesucht und immer noch keinen Code gefunden, um genau das zu tun, was ich brauche.

Das Makro muss in der Lage sein, Hunderte von Zellen in derselben Spalte (Tabelle1) zu durchsuchen. Wenn eine Zelle in dieser Spalte mit der ersten Zelle in einem anderen Arbeitsblatt (Tabelle2) übereinstimmt, fügt das Makro die folgenden Zellen (aus derselben Zeile in Tabelle2) ein ) auf Blatt1 (gleiche Zeile, aber andere Spalte).

Ich versuche also im Grunde, die Arbeit des Abgleichs von Text aus zwei verschiedenen Arbeitsblättern herauszuschneiden und die zugehörigen Daten in dieselbe Zeile zu kopieren und einzufügen.

Ich fand dieses Makro als Standardmodul (nicht sicher, wie hilfreich es ist, könnte aber ein Ausgangspunkt sein).

Option explizit

Sub CopyData ()

Zelle als Bereich abdunkeln

Dimme rw As Long

Für jede Zelle in Arbeitsblättern ("PTR"). Bereich ("A: A"). Zellen

Wenn Zelle "" dann

rw = Lookup (cell.Value)

Wenn rw 0 dann

Arbeitsblätter ("PTR"). Zellen (cell.Row, "L"). Resize (, 4) .Value = _

Arbeitsblätter ("Referenz"). Zellen (rw, "L"). Größe ändern (, 4) .Wert

End If

End If

Nächster

End Sub

Funktionssuche (Element als Zeichenfolge) solange

On Error Resume Weiter

Lookup = WorksheetFunction.Match (Element, Arbeitsblätter ("Referenz"). Bereich ("A: A"),

Falsch)

Bei Fehler Gehe zu 0

Funktion beenden

Lösung

Sie können es ohne ein Makro tun

Fügen Sie die folgende Formel in B1 in Blatt 2 ein

 = vlookup ($ A1, CELLREF-SHEET1, Spalte (), false) 

Die Syntax lautet VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)

Hinweis

Vielen Dank an Excelguru für diesen Tipp im Forum.

Vorherige Artikel Nächster Artikel

Top-Tipps