12.08.2009, 10:19 | #1 |
Участник
|
Медленное копирование данных из Spreadsheet в PivotTable
Добрый день! Может кто-нибудь сталкивался с такой проблемой. Отчет выводит данные в Spreadsheet (версия 11.0.0.6258). Есть кнопка по которой данные из Spreadsheet копируются в PivotTable.
void toExcelSheet(FormActiveXControl _excelSheet) { COM cells; COM selection; COM range, col, bor; ; excelSheet = _excelSheet; cells = excelSheet.Cells(); cells.Cut(); PivotTable._Copy(PivotTable.ActiveView()); range = excelSheet._Range("A1"); range.Select(); selection = excelSheet.Selection(); selection.Paste(); col = selection.Columns(); col.AutoFit(); bor = selection.Borders(); bor.LineStyle(1); range.Select(); } При попытке скопировать отчет с 6-ю группировками, 7 показателей, 6500 строк программа зависает на 15 минут. К слову такой же по времени результат получается если попробовать скопировать данные из Spreadsheet через CTRL+C. В коде кстати зависает на этой строчке PivotTable._Copy(PivotTable.ActiveView()); Выгружать данные в Excel при помощи кнопки "Выгрузка в Excel" не могу т.к. в Spreadsheet настроены вычисляемые итоги, а при такой выгрузке они не переносятся в Excel. Подскажите, если кто сталкивался, можно ли как-то решить проблему с зависанием или может есть возможность экспортировать в Excel вычисляемый итог. |
|