扩展VBA范围溢出

时间:2015-11-21 13:13:06

标签: excel-vba vba excel

我想在VBA中读取和存储Excel范围以进行进一步操作。但是当范围大于256 x 65536个单元格时,我会收到溢出错误。是否可以阅读大范围?如何在VBA中实现Big Grid概念?

为了澄清一些评论和答案,我不计算范围内的单元格,而是试图存储它。这是Excel2010。代码如下

Dim rngRange as Range
rngRange = sheetName("Sheet1").Range(sheetName("Sheet1").Cells(1,1),sheetName("Sheet1").Cells(65537, 257))

1 个答案:

答案 0 :(得分:0)

范围是单个工作表上的一组单元格。一个范围内的最大单元格数由下式给出:

=ROWS(A:A)*COLUMNS(1:1)

对于Excel 2007及更高版本,这是17,179,869,184个单元格。 VBA可以操纵这个大小的范围。例如:

Sub dural()
   Dim ReallyBigRange As Range, N As Double
   Set ReallyBigRange = Cells
   N = ReallyBigRange.CountLarge
   MsgBox N
   ReallyBigRange.Clear
End Sub