我可以通过从另一个变量构造变量来调用变量吗?

时间:2016-01-22 12:57:35

标签: excel excel-vba vba

假设的例子,因为完整的例子太复杂了:

我们说我有三种尺寸的滚动拖车的数量; Bolster,40RT和62RT。我将这些数量存储在变量VarBolVar40RTVar62RT中。然后,另一个变量将选择滚动预告片的类型,我们称之为RTVar。

有没有办法构建一个变量,以便在其他地方使用?例如(我意识到这种语法不起作用),类似于

MsgBox "Quantity is " & ("Var" & RTVar)

或者我最终只需要一堆IF语句?

1 个答案:

答案 0 :(得分:3)

正如@Rory建议的那样,如果要使用字符串访问数据,请使用字典:

Sub test()
    Dim D As Object, s As String

    Set D = CreateObject("Scripting.Dictionary")
    D.Add "Bol", 0 'this is sort of like Dim Bol as Long
    D.Add "40RT", 0
    D.Add "62R", 0

    'can assign like this
    D("Bol") = 5
    D("40RT") = D("Bol") + 7

    'can use like this
    MsgBox D("Bol")

    'or even like this:

    s = "40RT"
    MsgBox D(s)

End Sub