мы хотим выполнить следующие операции (по порядку) с файлом шаблона Excel через C # .NET.
- Откройте шаблон Excel
- Чтение данных из представлений SQL и запись в лист в шаблоне Excel
- Установить именованный диапазон для данных, скопированных в
- Обновить сводную таблицу на основе именованного диапазона
- Защитите паролем и верните файл как загружаемый.
Ниже приведены рассматриваемые варианты: 1. Microsoft.Office.Interop.Excel - драйвер обеспечивает все функции, упомянутые выше, однако для драйвера требуется, чтобы на сервере был установлен клиентский инструмент Excel, что не является предпочтительным вариантом, поскольку мы не можем запросить для установки Excel во всех средах. 2. Сторонние предложения. Бесплатный драйвер под названием Excel Package Plus, казалось, удовлетворял почти всем нашим требованиям. Мы смогли сделать практически все из приведенного выше списка операций, кроме обновления сводной таблицы. 3. Запись макроса в существующий файл Excel для обновления сводной таблицы. Обновление будет происходить, когда файл открывается пользователем, вызывая задержку, а также требуется загрузить файл с обновленной сводной таблицей.
Итак, очевидно, что со всеми вышеперечисленными вариантами мы наткнулись на препятствие. Мне было интересно, можно ли разместить шаблон Excel на одном сервере, на котором установлен Excel, и получить к нему доступ с веб-сервера. Таким образом, я могу использовать Interop.Excel без необходимости устанавливать драйвер на моем веб-сервере. Я не совсем уверен, будет ли это работать так, как ожидалось.