小编Ale*_*der的帖子

分配带数组的Range时出现VBA内存问题

我的目的是为Excel范围的单元格分配二维变量数组的值.

该分配工作正常,但我面临一个记忆问题(泄漏):当我启动Excel时,该过程需要或多或少22 Mo的Ram.运行以下代码(创建新工作簿,分配范围,关闭工作簿而不保存)后,该过程需要33 Mo的RAM.

有谁知道我做错了什么?

此致,亚历山大

这里的代码

Option Explicit

Sub test()
   Dim nLines As Long
   Dim xSize As Long
   Dim j As Long
   Dim i As Long

   'Creating New Empty Workbook
   Application.Workbooks.Add
   Range("A1").Select

   Application.ScreenUpdating = False

   nLines = 10000
   xSize = 200

   Dim myRange As Range
   Dim myArray() As Variant

   ReDim myArray(1 To nLines, 1 To xSize)

   'Assigning some values
   For j = 1 To nLines:
       For i = 1 To xSize:
        myArray(j, i) = i * 4 / 3# …
Run Code Online (Sandbox Code Playgroud)

memory excel vba memory-leaks range

2
推荐指数
1
解决办法
5449
查看次数

标签 统计

excel ×1

memory ×1

memory-leaks ×1

range ×1

vba ×1