Работа с MS Excel на ASP.NET MVC. Импорт и экспорт файлов
На сегодняшний день существует достаточно много готовых решений (библиотек) для взаимодействия с файлами Excel, чтобы не работать напрямую с системными GridView и DataTable. Не будем изобретать велосипед и рассмотрим одну из популярных и удобных библиотек, которой я пользуюсь чаще других.
Данная библиотека называется ClosedXML . По этой ссылке находится официальный адрес проекта на GitHub. Библиотека позволяет легко манипулировать файлами MS Excel в удобной объектно-ориентированной манере. Она может быть использована на любом .NET языке программирования (C#, VisualBasic.NET), а также в проектах не только типа WebApplication.
Представим ситуацию, что у нас есть под рукой вот такой Excel-файл с ценами на ремонт телефонов, в котором на листах расположены отдельные бренды, колонки на листе представляют конкретные модели для этого бренда, а строки представляют конкретные неисправности и сколько будет стоить ремонт для той или иной модели.
Давайте создадим веб-приложение, которое сможет распарсить этот файл так, чтобы мы могли работать с записями в объектно-ориентированной манере, например, сохранять/обновлять бренды, модели и позиции в прайсе в базу данных. Или, например, представлять этот прайс в виде обычной html-таблицы в браузере пользователя.
Создаем в Visual Studio проект типа MVC, открываем Nuget Manager и скачиваем нужный нам пакет.
Создадим все доменные классы-модели, которые описывают предметную область.
Описанные модели максимально простые, чтобы не усложнять пример. В них нет и не отслеживается уникальных идентификаторов, все свойства типа String и т.д.
Также определим т.н. ViewModel, то есть модель для представления. В нее заключим все объекты доменной модели, которые мы хотим показать пользователю в браузере:
Далее в вашем проекте определите какое-нибудь действие в нужном контроллере, которое будет отвечать за загрузку Excel-файла из браузера на сервер. Пример кода с html-формой в соответствующем представлении:
Из примера видно, что в форме мы обращаемся к методу Import в контроллере Home. Создадим подобный метод:
В этом методе мы парсим Excel-файл и манипулируем записями в объектно-ориентированной манере. Код в методе довольно простой. Более подробно он объясняется в видео-версии этой статьи. Здесь отмечу основные моменты:
- в нескольких циклах foreach мы пробегаемся по всем записям в файле, параллельно создавая объекты классов наших доменных моделей;
- получается сформированная коллекция брендов телефонов, в каждом из которых содержится коллекция конкретных моделей, в каждой из которых содержится коллекция позиций прайса с ценами на ремонт;
- также создается ViewModel, где мы считаем количество ошибок при импорте и в которую вкладываем заполненную коллекцию брендов;
- в итоге мы можем либо сохранить полученные объекты в базу данных, либо отправить ViewModel в представление.
В качестве интерактива Вы можете в соответствующем представлении создать HTML-таблицу с прайсом и отправить ее в браузер пользователя.
Также возможна другая ситуация, когда у нас нет исходного Excel-файла, вместо этого веб-приложение должно сформировать его динамически, и пользователь сайта сможет его скачать. Например, тот же список брендов и моделей телефонов.
Вывод: В этой статье мы рассмотрели основные возможности библиотеки ClosedXML . Ее функционала вполне хватает для обработки большинства сценариев, когда данные представлены в формате MS Excel файлов.


Импорт из excel в sql — Мир ПК
Задача проста, но есть несколько моментов: необходимо знать, как называется инстанс (экземпляр) где находится база данных, естественно, нужно знать учётные данные, нужно знать название таблицы. Что ж, приступим.
Форматы переноса данных любого вида и размера из 1С в удобный Эксель
- mxl — специально созданный для возможности сохранять сразу в формате таблицы, даже сбрасывать в базы на других компьютерах;
- xls — стандартный тип;
- txt — текстовый, вся информация в блокноте;
- pdf — подойдет, если планируется работать с разновидностями Adobe Reader;
- html — веб-формат, используется для размещения на странице в интернете.
Каждый из перечисленных подтипов со своими особенностями. Например, если брать табличные пространства, то в них сохраняется строй. Среди доступного — открывать, сворачивать и читать различные группы. В остальных случаях это стандартный список.
На огромных объемах табличных строчек они размещаются на разных листах для удобной обработки.
Помните, что максимальное количество строк зависит от версии Екселя:

Задача. У вас есть файл Excel – и вы хотите, чтобы эти данные были помещены в таблицу. Я покажу вам, как это делается, и мы задокументируем каждый шаг с большим количеством иллюстраций.
Экспорт данных из PostgreSQL в Excel | Excellentricks: искусство аналитики
- Запустить меню, найти строку «вывести».
- Появится небольшое окно, в котором производится настройка. Там есть подпункт «выводить в» и два варианта — табличный или текстовый документ. Изначально стоит первый вид, он хорошо подходит для отправки в Эксель.
- В блоке с названием «Выводить колонки» необходимо определиться, что придется послать в строчное пространство. Если в планах — перенести все содержимое, то здесь тоже ничего менять не надо. Если предстоит конвертировать отдельные столбцы, то с лишних снимаем галочку.
- После выполнения всех настроек кликнуть на «Ок».
Также можно вставить информацию на лист другим способом. Направить курсор в клетку начала, а затем открыть вкладку «Главная», нажать на «Вставить» (его можно найти в части «Буфер обмена»). После всех этих действий содержимое окажется в табличном пространстве.