我的应用程序有关内存使用的问题,我似乎无法找到解决方案。 我从一个VBA宏开始,它将数据从一个工作表复制到另一个工作簿中。出于多种原因,我已将代码复制到VB.NET应用程序中。
VBA代码能够使用以下行一次复制数千个包含数据的单元格:
ws.Range(ws.Cells(j - 1, 1), ws.Cells(j + rij.Rows.Count - 2, 1)).EntireRow.Formula = rij.Formula
在这种情况下,变量“rij”是一个范围。
在我的VB.NET应用程序中,我使用完全相同的代码行。在某些情况下,它需要1.5GB的内存。使用32位Excel时,这通常会导致System.outofmemoryexception错误。
你们有没有人知道为什么VB.NET需要使用大量内存,而VBA却没有?更重要的是,有没有一种方法可以在没有大量内存的情况下使用VB.NET?
我真的希望你能帮助我!