Я пытаюсь скопировать около 2000 строк данных из одного файла Excel в плоский файл на основе Excel. Память исчерпывается, если я пытаюсь скопировать весь набор за один раз, поэтому я попытался скопировать / вставить по одной строке за раз. Это занимает значительное количество времени сейчас.
Есть обходные пути?
Я использую Excel 2016 и 32-битную систему. Я не могу переместить это в 64-разрядную версию, поскольку другие пользователи могут не иметь доступа к 64-разрядной системе.
вот код, используемый
'run loop from first row to last filled row, check if flag is yes, then copy entire row
For RowCount = 1 To RowMax
Indicator = ThisWorkbook.Sheets("Product Summary View").Cells(RowCount, 10).Value
If Indicator = "Yes" Then
ThisWorkbook.Sheets("Product Summary View").Cells(RowCount, 10).EntireRow.Copy
DestWB.Sheets("Sheet1").Cells(RowCountP, 1).PasteSpecial Paste:=xlPasteValues
RowCountP = RowCountP + 1
ElseIf Indicator = "SupplyRisk Indicator" Then
ThisWorkbook.Sheets("Product Summary View").Cells(RowCount, 10).EntireRow.Copy
DestWB.Sheets("Sheet1").Cells(RowCountP, 1).PasteSpecial Paste:=xlPasteValues
RowCountP = RowCountP + 1
End If