我想我在这里错过了一些基本错误,但我无法弄清楚。对于对象数组中的每个变体
我在电子表格中有大约64个单元格,我想将其设置为变量以用于整个电子表格中的其他方程式。重要的是它们是易于计算的变量,并且因为它们的位置会根据其他用户输入动态变化。我最初有下面的代码,其工作完全精细:
Set Ap1thV = range("B32")
Set Ap1tuV = range("B33")
Set Ap1thVdef = range("C32")
Set Ap1tuVdef = range("C33")
等等等等为64个单元(8列×8行)。变量被公开设置为对象。有没有更快的方法来设置所有这些变量?它在每次运行时都会显着减慢我的宏,但它在程序过程中需要经常运行。
我试图通过使用整合以下内容:
cellnums = 32
For Each Vcelldefs In Array(Ap1thV, Ap1tuV, Ap2thV, Ap2tuV, Ap3thV, Ap3tuV, Ap4thV, Ap4tuV)
Set Vcelldefs = Range("B" & cellnums)
cellnums = cellnums + 1
Next Vcelldefs
cellnums = 32
For Each Vdefcelldefs In Array(Ap1thVdef, Ap1tuVdef, Ap2thVdef, Ap2tuVdef, Ap3thVdef, Ap3tuVdef, Ap4thVdef, Ap4tuVdef)
Set Vdefcelldefs = Range("C" & cellnums)
cellnums = cellnums + 1
Next Vdefcelldefs
cellnums = 32
此代码运行,但变量都设置为无,这会引发背部的错误,这些细胞/变量引用或在计算中使用的任何时间。
任何与此有关的帮助将非常感谢!如果我能更好地解释它,就问。谢谢,
需要使用阵列代替这个变量'Ap1thV,Ap1tuV,Ap2thV,Ap2tuV,Ap3thV,Ap3tuV,Ap4thV,Ap4tuV'这样的:'昏暗Ap1thV(1至32)作为Range' –
Ap1thV是细胞B32 ,Ap1tuV是细胞B33,Ap2thV是细胞B34,Ap2tuV是细胞B35等等。但它只是通过Ap4tuV这是单元格B39。有8列8行。每个单元都需要有自己的变量。 – user2623046