我有一个关于在打开的工作簿中保存数组的问题。
我有一个在运行宏时创建的大型数组,运行从头到尾需要大约10秒(不过于禁止,但不够方便)。
我希望能够创建一次数组,然后使用工作表中的更改来更新从中显示的数据。
例如:我有多个客户存储在数组的第一维中,然后在更深层次上有更详细的信息。我希望将用户输入更改用于单元格A1(放入新的客户ID)以从数组中调用另一组值 - 并显示。
我之前在运行宏来创建整个数组之前已经这样做了 - 但这次我想避免'create array'进程,只是将它存储在工作表中。
有一种简单的方法吗?
提前谢谢!
答案 0 :(得分:0)
2 典型方式:
Dim
数组 模块中的潜艇(这将使其有些永久) 请参阅:
答案 1 :(得分:0)
使数组全局化(可从所有工作簿访问), 在任何sub \ function:
之前在模块中声明它Option explicit
Public Arr() as string 'for example
Sub firstsub()
....
End sub
此外,为了使数组的范围更小,您可以在工作表的代码中将其声明为私有。但实现起来会更棘手,因为10s宏需要与数组进行交互。