Vlookup Excel VBA

我需要简单的macros来复制一个vlookup函数的帮助。 所以,在Sheet1中有一个H2:H9中的值表。H2中的值对应于表3中的整个D列,并且需要将值复制/粘贴到列D中从第2行到最后一行的每个单元中数据。 与H3相同,H3对应于整个AC列,H3中的值必须从第2行到最后一行复制/粘贴到AC栏AC中的每个单元格中。 我正在使用这个代码来找出最后一行。 任何人都可以请帮助我吗?

Dim lastRow As Long Dim rng As Range Set rng = ThisWorkbook.Sheets(2).Cells lastRow = rng.Find(What:="*", After:=rng.Cells(1), Lookat:=xlPart, LookIn:=xlFormulas, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False).Row 

这条简单的线应该可以帮助您find工作表中最后使用的行。

 lastRow= ActiveWorkbook.Sheets(3).UsedRange.Rows.Count 

其余的,那是什么意思?

 sheets(3).range("D2:D" & lastRow).value = sheets(1).range("H2").value sheets(3).range("AC2:AC" & lastRow).value = sheets(1).range("H3").value 

就是这样

 ' Find Last row in Sheet1 in Column H LastRow = ThisWorkbook.Worksheets(1).Cells(ThisWorkbook.Worksheets(1).Rows.Count, "H").End(xlUp).Row ' Get array of range vArr = ThisWorkbook.Worksheets(1).Range("H2:I" & LastRow).Value ThisWorkbook.Worksheets(3).Range("D2:D9").Cells.Resize(UBound(vArr), 1) = vArr