VBA에서 일련의 VLOOKUP을 수행하려고하고 있으며 시트의 값을 개별적으로 반복하지 않고 EVALUATE 함수로 일괄 처리하는 방법이 있어야한다고 생각했습니다. 나는 이미 그 방법을 알고있다). 하지만 조회 값을 "동적"으로 만드는 데 어려움을 겪고 있습니다.VBA에서 EVOOUATE와 VLOOKUP을 결합하는 방법
rngJ2.Value= Evaluate("VLOOKUP(Sheet2!I" & rngJ2.address(row) & ",Sheet1!A:H,8,FALSE)")
:
Dim ws1 as worksheets, ws2 as worksheet, rngJ2 as Range, Lastrow2 as long
Set ws1 = ActiveWorkbook.Sheets("Sheet1")
Set ws2 = ActiveWorkbook.Sheets("Sheet2")
LastRow2 = ws2.Cells.Find(What:="*", _
After:=Range("A1"), _
LookAt:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
set rngJ2 = ws2.range("J2:J" & Lastrow2)
을 지금 여기에 내가 rngJ2.address (행) 부분은 올바른 구문 아니라는 것을 알고, 다음에 수행 할 작업입니다 : 내가 지금까지 알아 낸 입니다
rngJ2.address (행) 부분을 사용하여 수행하려는 작업은 셀 J5가 I5를 조회 값으로 사용하고 J12가 I12 등을 사용하도록 범위의 각 셀에 대해 적절한 행을 정의하고 있습니다.
모두 아이디어?
범위 rngJ2 여러 행이됩니다, VLOOKUP의 첫 번째 기준은 그을음 세포이다. –
VLookUp 결과를 열에 넣고 있습니까? 그렇다면 수식을 첫 번째 수식에 입력하고 Range.FillDown을 사용하여 여러 행에 대한 수식을 빠르게 사용할 수 있습니다. – Rdster