gpt4 book ai didi

arrays - VBA - 公共(public)数组错误 - 下标超出范围

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

我想声明一个公共(public)数组,创建它,然后在另一个子中使用它。这是我写的示例:

Public array1() As String
<小时/>
Sub Create_Array()

Dim array1(1 To 4) As String

array1(1) = "1"
array1(2) = "2"
array1(3) = "A"
array1(4) = "B"

End Sub
<小时/>
Sub Show_Some_Index()

Dim a As String
a = array1(1)
MsgBox (a)

End Sub

我收到错误 9:“下标超出范围”。找不到答案,我做错了什么?

最佳答案

变量array1()Sub Create_Array范围仅限于该过程 - 基本上它是一个局部变量,只能在该过程中访问,并且它恰好与其他地方声明的另一个公共(public)字段具有相同的名称,所以发生的情况是 Show_Some_Index正在处理尚未初始化的数组。

Dim用于声明变量。如果您打算重新调整范围内的数组的尺寸,请使用 ReDim关键字。

<小时/>

更好的方法是使用返回数组的函数,而不是依赖全局变量。

关于arrays - VBA - 公共(public)数组错误 - 下标超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30443200/

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