Excel 无循环求值索引中的动态查找范围

Excel 无循环求值索引中的动态查找范围,excel,vba,Excel,Vba,我试图创建vba来计算范围内的索引forumla,有没有一种方法可以在不通过循环运行变量的情况下为每一行运行匹配查找值?示例代码如下: 'Column C Fill '=IFERROR(INDEX('EMEA lists'!$F$2:$F$908,MATCH(B7,'EMEA lists'!$C$2:$C$908,0)),"no data found") Range("C6:C" & wks2LastRow) = Evaluate("INDEX(" & wks3.Range("F

我试图创建vba来计算范围内的索引forumla,有没有一种方法可以在不通过循环运行变量的情况下为每一行运行匹配查找值?示例代码如下:

'Column C Fill
'=IFERROR(INDEX('EMEA lists'!$F$2:$F$908,MATCH(B7,'EMEA lists'!$C$2:$C$908,0)),"no data found")
Range("C6:C" & wks2LastRow) = Evaluate("INDEX(" & wks3.Range("F2:F" & wks3LastRow) & ",MATCH(" & "<insert row reference>" & "," & wks3.Range("C2:C" & wks3LastRow) & ",0)))")

以下代码假定从活动工作表的B6开始的B列包含查找值。它将首先从激活工作表的C6开始在C列中输入公式,然后将公式转换为值

With Range("C6:C" & wks2LastRow)
    .Formula = "=INDEX(" & wks3.Range("F2:F" & wks3LastRow).Address(External:=True) & ",MATCH(" & Range("B6").Address(False, False) & "," & wks3.Range("C2:C" & wks3LastRow).Address(External:=True) & ",0))"
    .Value = .Value
End With