gpt4 book ai didi

arrays - VBA数组Vlookup

转载 作者:行者123 更新时间:2023-12-03 03:25:44 24 4
gpt4 key购买 nike

我想直接从 VBA 编辑器创建 vlookup(不引用单元格)。我尝试过二维数组,但不起作用。

Sub vl()
Dim typ(1 To 5, 1 To 2) As Variant

typ(1, 1) = A
typ(2, 1) = B
typ(3, 1) = C
typ(4, 1) = D
typ(5, 1) = E
typ(1, 2) = 50
typ(2, 2) = 40
typ(3, 2) = 30
typ(4, 2) = 20
typ(5, 2) = 10

MsgBox Application.WorksheetFunction.VLookup("A", typ, 2, 0)
End Sub

我希望能得到 50 分。

我知道这可以使用单元格范围来完成,但希望直接在 VBA 编辑器中完成。

最佳答案

这是一个很好的例子,说明为什么您应该始终使用Option Explicit。您的代码可以工作,但由于您没有 Option Explicit,VBEditor 认为 A 是一个变量,而不是 String。因此,它不会在 MessageBox 上提供任何内容。

这按预期工作:

Option Explicit

Sub vl()
Dim typ(1 To 5, 1 To 2) As Variant

typ(1, 1) = "A"
typ(2, 1) = "B"
typ(3, 1) = "C"
typ(4, 1) = "D"
typ(5, 1) = "E"
typ(1, 2) = 50
typ(2, 2) = 40
typ(3, 2) = 30
typ(4, 2) = 20
typ(5, 2) = 10
MsgBox Application.WorksheetFunction.VLookup("A", typ, 2, 0)

End Sub

MSDN Option Explicit

关于arrays - VBA数组Vlookup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47872143/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com