在子程序中,只有在声明变量为引用传递时,才能修改原始变量。否则,子程序中的任何更改都仅限于当前范围,对原始变量没有影响。
下面是一个示例解决方案:
Sub Main() Dim myArray(1 To 5) As String FillArray myArray Debug.Print myArray(1) '输出 "Hello" End Sub
Sub FillArray(ByRef arr() As String) arr(1) = "Hello" arr(2) = "World" End Sub
在上面的Main()程序中,我们声明了一个字符串数组myArray,并向FillArray()子程序传递它。 在FillArray()子程序中,我们使用引用参数(ByRef)传递数组,并在其中填充它。最后,当子程序完成时,数组myArray中的第一个元素已经被修改为"Hello",如果通过Debug.Print输出数组myArray,则它将包含"Hello"和"World"的值。
上一篇:把变量传递给扩展模板
下一篇:把标签添加到图表下方