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.