Makro / VBA potrzebowało znaleźć, dopasować, skopiować / wkleić
- Kwestia
- Rozwiązanie
- Uwaga
Kwestia
Ok, więc szukałem i przeszukiwałem, a mimo to nie znalazłem kodu, aby zrobić dokładnie to, czego potrzebuję.
Makro musi być w stanie przeszukiwać hundrendy komórek w tej samej kolumnie (arkusz 1) i jeśli komórka w tej kolumnie pasuje do pierwszej komórki w innym arkuszu (Arkusz2), wówczas makro wkleja następujące komórki (z tego samego wiersza na arkuszu2) ) na arkuszu 1 (ten sam wiersz, ale inna kolumna).
W zasadzie staram się wyciąć z pracy dopasowywanie tekstu z dwóch różnych arkuszy i kopiowanie i wklejanie powiązanych danych do tego samego wiersza.
Znalazłem to makro jako moduł standardowy (nie jestem pewien, jak to jest pomocne, ale może być punktem wyjścia).
Opcja Wyraźna
Sub CopyData ()
Dim cell As Range
Dim rw As Long
Dla każdej komórki W arkuszach („PTR”). Zakres („A: A”). Komórki
Jeśli komórka „” Następnie
rw = Lookup (cell.Value)
Jeśli rw 0 Następnie
Arkusze („PTR”). Komórki (cell.Row, „L”). Resize (, 4) .Value = _
Arkusze robocze („Odniesienie”). Komórki (rw, „L”). Zmień rozmiar (, 4) .Wartość
Zakończ jeśli
Zakończ jeśli
Kolejny
Napis końcowy
Wyszukiwanie funkcji (element jako ciąg) Tak długo
On Error Resume Next
Lookup = WorksheetFunction.Match (element, Arkusze („Referencje”). Zakres („A: A”),
Fałszywy)
On Error GoTo 0
Zakończ funkcję
Rozwiązanie
Możesz to zrobić bez makra
Umieść poniższy wzór w B1 w arkuszu 2
= vlookup ($ A1, CELLREF-SHEET1, column (), false)
Składnia to WYSZUKAJ.PIONOWO (wartość_wyszukiwania, tablica_tabeli, indeks_kolumny, indeks_zakresu)
Uwaga
Dziękujemy Excelguru za tę poradę na forum.