Vlookup和匹配excel功能到VBA?

时间:2016-07-26 15:54:42

标签: performance excel-vba match vlookup vba

=VLOOKUP($I13,Data!$B$13:$XFD$1048576,MATCH(M$10,Data!$B$11:$XFD$11,0),FALSE)

这是我试图转换为VBA以提高效率的功能。

目的是将页面上的日期链接到另一个页面( I13 ),然后将标题从一个页面匹配到另一个页面( M10 ),以便在我输入时一个新的标题,它从一张满是数据的工作表中自动提取数据。这就是上面的函数如何转换为VBA

谢谢

2 个答案:

答案 0 :(得分:0)

我正在研究这个功能,但没有成功,

1   2   3   4           1   2   3   4

Yash 123 255 1000 2000 Yash 123 255 1000 2000 ABC 234 456 5000 8000 ABC 234 456 5000 8000 XYZ 567 998 12000 18000 XYZ 567 998 12000 18000                         XYZ 567 998 12000 18000                         Yash 123 255 1000 2000                         ABC 234 456 5000 8000                         Yash 123 255 1000 2000                         XYZ 567 998 12000 18000                         XYZ 567 998 12000 18000

Sub yash()
r = 2
Do While Cells(r, 7) <> ""
Cells(r, 8) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 8), Range("A1:E1"), 0), 0)
Cells(r, 9) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 9), Range("A1:E1"), 0), 0)
Cells(r, 10) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 10), Range("A1:E1"), 0), 0)
Cells(r, 11) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 11), Range("A1:E1"), 0), 0)
r = r + 1
Loop
End Sub

要演示它,请复制全部并粘贴在此评论的第2行的单元格中(&#34; A1&#34;)。

答案 1 :(得分:0)

enter image description here

Sub yash()
r = 2
Do While Cells(r, 7) <> ""
Cells(r, 8) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 8), Range("A1:E1"), 0), 0)
Cells(r, 9) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 9), Range("A1:E1"), 0), 0)
Cells(r, 10) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 10), Range("A1:E1"), 0), 0)
Cells(r, 11) = WorksheetFunction.VLookup(Cells(r, 7), Range("A2:E4"), WorksheetFunction.Match(Cells(1, 11), Range("A1:E1"), 0), 0)
r = r + 1
Loop
End Sub

要演示它,请复制全部并粘贴在此评论的第2行的单元格中(&#34; A1&#34;)。