Я знаю, что есть много вопросов о том, как писать данные из набора данных или datatable to excel, но все они, кажется, берут новую чистую книгу excel. У меня есть специальный файл excel, содержащий несколько листов с большим количеством форматирования, формул и диаграммы. Мне просто нужно заложить данные над соответствующими частями некоторых листов и позволить превосходству справиться с остальными.Dataset/Datatable к файлу шаблона Excel .net
Так что мне нужен способ вставить данные в существующий файл excel в определенном диапазоне (который может варьироваться в зависимости от количества строк) на определенных листах. В настоящее время я использую COM-взаимодействие, чтобы написать все, что является кошмаром производительности и его нужно изменить. Итак, что было бы лучшим способом добиться этого?
Дополнительная информация: У нас есть простое приложение mvc, которое позволяет пользователю отправлять запрос на данные. Он запускает это консольное приложение в качестве отдельного процесса для получения данных и создания файла excel. Итак, сначала мы получаем данные, которые занимают 10-15 секунд, тогда мы записываем данные, чтобы преуспеть. Это фактическая запись значений в ячейку, которая, кажется, принимает все время. Являются ли формулы в файле excel влияющими на запись, я не знаю, но этого я и стараюсь избежать.
Обновление: Как выяснилось, формулы были основным помехами в скорости записи. Я установил свойство Calculation класса приложения Excel в XlCalculation.xlCalculationManual и теперь он работает намного быстрее! Это не правильный ответ на мой вопрос, но это то, что сработало.
Благодарим вас за shahkalpesh, кто это указал, и Cj!
Спасибо, Джефф
Являются ли формулы и обновление диаграмм, в то время как ячейки записываются, что приводит к снижению производительности? ScreenUpdating? – shahkalpesh
@shahkalpesh: Я не пишу формулы, просто данные, но да, писать, чтобы преуспеть в целом - это то, что медленно. Нет обновления экрана, так как мы отправляем его пользователю как электронное письмо после этого. Я добавил, что, хотя это поможет уточнить. Благодарю. –
@Jeff: Я имею в виду, что иногда существуют сложные формулы и/или диаграммы (ы) в зависимости от нескольких значений, вводимых пользователем. И затем он вычисляет и обновляет пользовательский интерфейс рабочей книги excel, который требует времени. Это может быть проблемой в вашем случае? Чтобы решить некоторые проблемы, напишите код в компоненте или исполняемом файле на основе VB6 и позвольте ему выполнить работу с excel. – shahkalpesh