Vlookup Excel VBA



我需要简单的宏,将复制vlookup函数的帮助。因此,我在Sheet1中有H2:H9的值表H2中的值对应于表3中的整个D列,并且需要将该值复制/粘贴到D列中从第2行到最后一行的每个单元格中。与H3相同,H3对应于整个AC列,H3中的值必须复制/粘贴到表3中AC列的每个单元格中,从第2行到最后一行。我用这段代码来算出最后一行。有人能帮帮我吗?

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

这个简单的行应该可以帮助您找到工作表中最后使用的行。

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

最新更新