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.

Poprzedni Artykuł Następny Artykuł

Najważniejsze Wskazówki