| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Вставка диапазона значений |
| Автор: Fedia 19.10.2006, 07:00 | ||
| Еще раз приветствую всех ! Сейчас почитал ветки форума по работе с Excel документами и не нашел примера вставки в таблицу диапазона значений. Я имею ввиду возможность одновременного заполнения сразу нескольких ячеек, входящих в диапазон ячеек, заданный двумя ячейками. Например, для занесения данных в диапазон ячеек с “A1” по “D4” в Delphi достаточно заполнить двухмерный массив типа OLEVariant, а затем выполнить:
Можно ли подобное реализовать в C# ? Только без использования буфера обмена и, желательно, без применения метода select (т.е. без явного выделения ячеек в таблице, поскольку в этом случае при параллельном формировании нескольких таблиц Excel часто возникают сбои). ЗЫ: надеюсь, что понятно описал, если что, постараюсь уточнить. |
| Автор: Fedia 24.10.2006, 07:25 | ||||
Не мог я поверить, что в Delphi предусмотрена возможность заполнения диапазона значений при работе с документами Excel, а в C#, фактически, родном языке Microsoft-а -нет. В итоге разобрался с принципами реализации этой задачи С#:
Коротко о том, для чего такой способ заполнения таблиц Excel может понадобиться и для чего я создал данную ветку форума. Все дело в скорости формирования документа. Нередко перед разработчиком ставятся задачи формирования отчетов в виде документов Excel. Если отчет содержит несколько десятков строк, то скорость формирования такого отчета будет достаточна велика даже при поячеечном способе формирования. А если документ содержит пару десятков тысяч строк, то его формирование поячеечным способом может составить часы процессорного времени. Для ускорения процесса формирования документов (отчетов) такого размера и был разработан способ однооперационного заполнения диапазона ячеек. Для сравнения скоростных характеристик формирования документов добавляю также пример формирования аналогичного по содержанию документа поячеечным способом:
У меня получилось следующее соотношение: - поячеечное формирование: 0:55:0 - заполнение диапазона значений: 0:0:125. Итого, скорости формирования документа отличаются в 440 раз |
| Автор: Fedia 9.1.2007, 04:20 | ||||
По просьбе одного из участников форума продолжаю тему.
|