Excel 2010溢出,64位由于数组大小

时间:2013-03-13 12:30:15

标签: arrays excel excel-vba vba

我尝试在具有16 GB RAM的64位计算机上在Excel VBA 2010中声明以下数组:

Public MyArray(1 To 100, 1 To 100, 1 To 6000, -2 To 2, ,-2 to 2, 1 To 3) As Double

如果我运行代码,Excel会立即崩溃。

如果我将数组的大小减小到:

Public MyArray(1 To 100, 1 To 100, 1 To 6, -2 To 2, ,-2 to 2, 1 To 3) As Double

一切都运行良好。

任何人都知道第一个阵列中崩溃的原因或如何解决它? 我认为由于16 GB的RAM,Excel无法处理数组很奇怪?

谢谢!

麦克

1 个答案:

答案 0 :(得分:1)

Public MyArray
   (1 To 100,     --->           100
    1 To 100,     ---> * 100  = 10 000
    1 To 6000,    ---> * 6000 = 60 000 000
    -2 To 2,      ---> * 5    = 300 000 000
      ,    ? 
    -2 to 2,      ---> * 5    = 1 500 000 000 
    1 To 3        ---> * 3    = 4 500 000 000
    ) As Double   ---> * 8    = 36 000 000 000

36 GB ??