首页 > 解决方案 > 如何在 for 循环中动态命名 VBScript 变量?

问题描述

如何在迭代循环中动态声明然后分配变量。例如:

for i = i to some_number
    dim "prefix" & i
    "prefix" & i = 2 * i
next

标签: vbscript

解决方案


Dim MyArray(5)

For x = 0 to 4
    MyArray(x) = 2 * (x + 1)
Next

For each thing in MyArray
    Wscript.echo thing
Next

For x = 0 to 4
     wscript.echo MyArray(x)
Next

如果你不知道有多少字典通常更容易。如果你有两个或更多的项目,那就更容易了。从帮助。https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/dictionary-object

Dim d                   'Create a variable
Set d = CreateObject(Scripting.Dictionary)
d.Add "a", "Athens"     'Add some keys and items
d.Add "b", "Belgrade"
d.Add "c", "Cairo"

也可以从文本中制作它们。

MyArray1 = Split("This is a bunch of words", " ")    

For each thing in MyArray1
    Wscript.echo thing
Next

推荐阅读