[英]using Lookup in VBA,Excel
我有兩個工作表sheet1和sheet2。
Sheet1有27列,sheet2有10列,
我正在工作表1的J列中查找ID,並在工作表2的g列中需要相應的日期。
我需要將該相應的日期打印在工作表1的AA欄中。
我正在使用以下belo VBA,它正在打印由G列插入的工作表2的D列。
這是公式
= IFERROR(!VLOOKUP(J2; SHEET2 $ A:$ L; 7; 0); “”)
我不想使用,記錄宏功能。 請幫助我更正代碼。
Sub lookup()
Dim totalrows As Long
Dim totalcolumn As Long
Dim rng As Range
Dim rng1 As Range
Dim i As Long
totalrows = ActiveSheet.UsedRange.Rows.Count
For i = 2 To totalrows
Sheets("Sheet1").Select
Set rng = Sheets("Sheet2").UsedRange.Find(Cells(i, 10).Value)
If Not rng Is Nothing Then
Cells(i, 27).Value = rng.Value
End If
Next i
End Sub
除了FOR
循環,您可以使用:
Sheets("Sheet1").Range("AA2:AA" & totalrows).Formula = Application.WorksheetFunction.IfError(Application.VLookup(Sheets("Sheet1").Range("J2:J15"), Sheets("Sheet2").Range("$A:$L"), 7, 0), "")
編輯:_____________________________________________________________________________
Sub lookup()
Dim totalrows As Long, totalrowsSht2 As Long
totalrows = Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row
totalrowsSht2 = Sheets("Sheet2").Cells(Rows.Count, "A").End(xlUp).Row
Sheets("Sheet1").Range("AA2:AA" & totalrows).Formula = Application.WorksheetFunction.IfError(Application.VLookup(Sheets("Sheet1").Range("J2:J" & totalrowsSht2), Sheets("Sheet2").Range("$A:$L"), 7, 0), "")
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.