#c# #excel #excel-interop
#c# #excel #excel-interop
Вопрос:
Я пытаюсь использовать SaveAs () для сохранения данных электронной таблицы Excel (с 8 листами, некоторые листы с 15000 строками), но SaveAs () никогда не возвращается. Если я удалю некоторые листы, это приведет к успешному сохранению файла на жестком диске. Есть ли какой-либо способ сохранить всю огромную электронную таблицу без зависания?
Большое спасибо.
///////// my c# code to save Excel data:
xlWorkBook.SaveAs(outFileName,
Excel.XlFileFormat.xlWorkbookNormal,
Type.Missing,
Type.Missing,
false,
false,
Excel.XlSaveAsAccessMode.xlExclusive,
false,
false,
Type.Missing,
Type.Missing,
Type.Missing);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
Ответ №1:
Вы пробовали запускать ее с xlApp.Visible = True
, чтобы посмотреть, не выдает ли Excel какие-либо странные ошибки? Вы также можете попробовать xlApp.DisplayAlerts = false
остановить любые предупреждения / ошибки, которые могут появляться за запущенным приложением (мы сталкивались с обеими этими проблемами раньше)
Комментарии:
1. Она работает с xlApplication. Видимый = true. Большое спасибо.
2. @CHI KUO TANG ах, это, конечно, то, что я имел в виду. Я отредактирую свой ответ, чтобы уточнить. Я рад, что вы смогли заставить это работать.