Makro / VBA nepieciešams, lai atrastu, saskaņotu, kopētu / ielīmētu
- Izdevums
- Risinājums
- Piezīme
Izdevums
Labi, tāpēc es esmu meklējis un meklējis un vēl neesmu atradis kodu, lai darītu tieši to, kas man nepieciešams.
Makro ir jāspēj meklēt šūnu krājumus vienā un tajā pašā kolonnā (lapa 1) un, ja šūnas kolonna atbilst pirmajai šūnai citā darblapā (Lapa2), tad makro ielīmē šādas šūnas (no tās pašas rindas 2 lapā) ) uz loksnes1 (tajā pašā rindā, bet citā kolonnā).
Tāpēc es būtībā cenšos izgriezt darbu no divu dažādu darblapu saskaņošanas un kopēt un ielīmēt attiecīgos datus vienā rindā.
Es atklāju šo makro kā standarta moduli (nav pārliecināts, cik noderīga tas ir, bet varētu būt sākuma punkts).
Iespēja skaidri
Sub CopyData ()
Dim šūnu kā diapazons
Dim rw As Long
Katrai darblapu šūnai ("PTR") diapazons ("A: A")
Ja šūna "" tad
rw = Meklēt (cell.Value)
Ja rw 0 Tad
Darblapas ("PTR"). Šūnas (šūna. Row, "L"). Resize (, 4) .Value = _
Darblapas ("Atsauce"). Šūnas (rw, "L") Resize (, 4) .Value
Beigas Ja
Beigas Ja
Nākamais
Beigt Sub
Funkciju meklēšana (postenis kā virkne)
Pēc kļūdas atsākšanas
Meklēt = WorksheetFunction.Match (vienums, darblapas ("atsauce"). Diapazons ("A: A"),
False)
Kļūdā GoTo 0
Beigu funkcija
Risinājums
To var izdarīt bez makro
2. tabulā ievietojiet zemāk esošo formulu B1
= vlookup ($ A1, CELLREF-SHEET1, sleja (), false)
Sintakse ir VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)
Piezīme
Paldies Excelguru par šo padomu forumā.