Выгрузка из excel в текстовый файл
Если вам необходимо предоставить книгу в формате текстового файла, вам необходимо преобразовать книгу в текстовые файлы. И эта статья познакомит вас с двумя методами простого экспорта данных Excel в текстовые файлы.
- Экспорт одного листа в текстовый файл в Excel
- Пакетный экспорт нескольких листов в отдельные текстовые файлы в Excel
- Экспорт выделенного фрагмента (или одного столбца) в текстовый файл с помощью VBA
- Экспорт выделения (или одного столбца) в текстовый файл с помощью Kutools for Excel
Экспорт одного листа в текстовый файл в Excel
По умолчанию данные Excel будут сохранены в виде книг в формате . XLSX. Однако мы можем экспортировать рабочий лист существующей книги в виде текстовых файлов с Сохранить как характерная черта. Пожалуйста, сделайте следующее:
1. Перейдите на рабочий лист, который вы будете экспортировать в текстовый файл, и нажмите Файл (или Кнопка офиса)> Сохранить как.
2. В открытии Сохранить как диалоговом окне выберите папку назначения, в которую вы сохраните экспортируемый текстовый файл, назовите файл в Имя файла поле, а затем выберите Текст Юникода (* .txt) из Сохранить как раскрывающийся список. Смотрите скриншот:
3. Затем появятся два предупреждающих диалоговых окна с просьбой экспортировать только активный рабочий лист в виде текстового файла и исключить любые несовместимые функции с текстовым файлом. Нажмите OK кнопки и Да кнопку последовательно.
Затем данные на активном листе экспортируются как новый текстовый файл.
Внимание: Сохранить как команда может экспортировать данные только активного рабочего листа в виде текстового файла. Если вы хотите экспортировать все данные всей книги, вам необходимо сохранить каждый рабочий лист в виде текстового файла отдельно.
Экспорт выделенного фрагмента (или одного столбца) в текстовый файл с помощью VBA
Следующий код VBA также может помочь вам экспортировать данные выбранного диапазона (например, один столбец) в текстовый файл, выполните следующие действия:
1. Удерживая нажатой ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.
2. Нажмите на Вставить > Модульи вставьте следующий код в окно модуля.
VBA: экспорт выделенного фрагмента или всего листа в текстовый файл
3. Затем нажмите F5 ключ для запуска этого кода. Затем выберите диапазон данных, который вы хотите экспортировать, во всплывающем диалоговом окне и нажмите кнопку OK кнопку, см. снимок экрана:
4. А теперь в другом диалоговом окне «Сохранить как» укажите имя для этого текстового файла и папку, в которую нужно поместить этот файл, и нажмите кнопку Сохраните кнопку.
Экспорт выделения (или одного столбца) в текстовый файл с помощью Kutools for Excel
Освободи Себя Сохранить как Команда может экспортировать все данные на активном листе в виде текста. Что делать, если экспортировать все данные указанных неактивных листов или часть данных на листе в виде текстового файла? Kutools для Excel's Диапазон экспорта в файл Утилита может помочь нам легко экспортировать и сохранять выбранные данные в виде текстового файла.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Бесплатная пробная версия сейчас!
1. Выберите ранг, который вы экспортируете в текстовый файл (в нашем случае мы выбираем столбец A), и нажмите Kutools Plus > Импорт / Экспорт > Диапазон экспорта в файл, см. снимок экрана:
3. Назовите экспортируемый текстовый файл в новом диалоговом окне открытия и щелкните значок Ok кнопку.
Затем выделенный фрагмент (выбранный столбец A) был экспортирован в виде текстового файла и сохранен в указанной папке.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
Экспорт нескольких листов в отдельные текстовые файлы в Excel
Иногда вам может потребоваться экспортировать несколько листов в несколько текстовых файлов в Excel. Функция «Сохранить как» может быть немного утомительной! Не волнуйтесь! Kutools для Excel Разделить книгу Утилита предоставляет пользователям Excel простой обходной путь для экспорта нескольких листов во множество отдельных текстовых файлов несколькими щелчками мыши.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Бесплатная пробная версия сейчас!
1. Нажмите Kutools Plus > Workbook > Разделить книгу. Смотрите скриншот:
2. В открывшемся диалоговом окне «Разделить книгу» выполните следующие действия:
(1) Проверьте рабочие листы, которые вы будете экспортировать в отдельные текстовые файлы в Название книги раздел;
(2) Проверьте Укажите формат сохранения , а затем выберите Текст в Юникоде (* .txt) из раскрывающегося списка снизу, см. снимок экрана слева:
(3) Щелкните значок Трещина кнопку.
3. Затем во всплывающем диалоговом окне «Обзор папок» выберите папку, в которую вы сохраните экспортированные текстовые файлы, и щелкните значок OK кнопку.
На данный момент каждый указанный рабочий лист был экспортирован как отдельный текстовый файл и сохранен в указанной папке.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
Простое массовое сохранение каждого листа в виде отдельного файла PDF / text / csv или книги в Excel
Обычно мы можем сохранить активный рабочий лист как отдельный файл .pdf, .txt или .csv с помощью функции «Сохранить как». Но Kutools для Excel Разделить книгу Утилита может помочь вам легко сохранить каждую книгу как отдельный файл PDF / TEXT / CSV или книгу в Excel. Полнофункциональная бесплатная 30-дневная пробная версия!
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
Импортировать данные из файлов Excel в SQL Server или базу данных SQL Azure можно несколькими способами. Некоторые методы позволяют импортировать данные за один шаг непосредственно из файлов Excel. Для других методов необходимо экспортировать данные Excel в виде текста (CSV-файла), прежде чем их можно будет импортировать. В этой статье перечислены часто используемые методы и содержатся ссылки для получения дополнительных сведений.
Список методов
Для импорта данных из Excel можно использовать следующие средства:
Сначала экспортировать в текст (SQL Server и база данных SQL) | Непосредственно из Excel (только в локальной среде SQL Server) |
---|---|
Мастер импорта неструктурированных файлов | мастер импорта и экспорта SQL Server |
Инструкция BULK INSERT | Службы SQL Server Integration Services |
BCP | Функция OPENROWSET |
Мастер копирования (Фабрика данных Azure) | |
Фабрика данных Azure. |
Если вы хотите импортировать несколько листов из книги Excel, обычно нужно запускать каждое из этих средств отдельно для каждого листа.
Этот список не дает полного описания таких сложных инструментов и служб, как SSIS или фабрика данных Azure. Дополнительные сведения об интересующем вас решении доступны по ссылкам ниже.
Дополнительные сведения о подключении к файлам Excel, а также об ограничениях и известных проблемах, связанных с загрузкой данных в файлы этого приложения и из них, см. в разделе Загрузка данных в приложение Excel или из него с помощью служб SQL Server Integration Services (SSIS).
Если у вас не установлен SQL Server или SQL Server есть, но нет SQL Server Management Studio, см. статью Скачивание SQL Server Management Studio (SSMS).
Мастер импорта и экспорта SQL Server
Импортируйте данные напрямую из файлов Excel, выполнив инструкции на страницах мастера импорта и экспорта SQL Server. При необходимости сохраните параметры в виде пакета служб SQL Server Integration Services (SSIS), доступного для настройки и многократного применения в будущем.
В SQL Server Management Studio подключитесь к экземпляру SQL Server Компонент Database Engine.
Разверните узел Базы данных.
Щелкните базу данных правой кнопкой мыши.
Наведите указатель мыши на пункт Задачи.
Выберите один из следующих параметров:
Импорт данных
Экспорт данных
Пример использования мастера для импорта из Excel в SQL Server см. в разделе Get started with this simple example of the Import and Export Wizard (Начало работы с помощью простого примера использования мастера импорта и экспорта).
Сведения о других способах запустить мастер импорта и экспорта см. в разделе Запуск мастера импорта и экспорта SQL Server.
Службы SQL Server Integration Services
Если вы работали со службами SSIS и не хотите запускать мастер экспорта и импорта SQL Server, создайте пакет SSIS, который использует для потока данных источник Excel и назначение SQL Server.
Дополнительные сведения о компонентах SSIS см. в указанных ниже статьях.
Чтобы научиться создавать пакеты SSIS, см. руководство How to Create an ETL Package (Как создать пакет ETL).
OPENROWSET и связанные серверы
В базе данных SQL Azure невозможно импортировать данные непосредственно из Excel. Сначала необходимо экспортировать данные в текстовый файл (CSV). Примеры см. в разделе Пример.
Поставщик ACE (прежнее название — поставщик Jet), который подключается к источникам данных Excel, предназначен для интерактивного клиентского использования. Если поставщик ACE используется на сервере SQL Server, особенно в автоматизированных процессах или процессах, выполняющихся параллельно, вы можете получить непредвиденные результаты.
Распределенные запросы
Импортируйте данные напрямую из файлов Excel в SQL Server с помощью функции Transact-SQL OPENROWSET или OPENDATASOURCE . Такая операция называется распределенный запрос.
В базе данных SQL Azure невозможно импортировать данные непосредственно из Excel. Сначала необходимо экспортировать данные в текстовый файл (CSV). Примеры см. в разделе Пример.
Перед выполнением распределенного запроса необходимо включить параметр ad hoc distributed queries в конфигурации сервера, как показано в примере ниже. Дополнительные сведения см. в статье ad hoc distributed queries Server Configuration Option (Параметр конфигурации сервера "ad hoc distributed queries").
В приведенном ниже примере кода данные импортируются из листа Excel Sheet1 в новую таблицу базы данных с помощью OPENROWSET .
Ниже приведен тот же пример с OPENDATASOURCE .
Чтобы добавить импортированные данные в существующую таблицу, а не создавать новую, используйте синтаксис INSERT INTO . SELECT . FROM . вместо синтаксиса SELECT . INTO . FROM . из предыдущих примеров.
Для обращения к данным Excel без импорта используйте стандартный синтаксис SELECT . FROM . .
Дополнительные сведения о распределенных запросах см. в указанных ниже разделах.
-
(Распределенные запросы по-прежнему поддерживаются в SQL Server 2016, но документация по этой функции не обновлена.)
Связанные серверы
Кроме того, можно настроить постоянное подключение от SQL Server к файлу Excel как к связанному серверу. В примере ниже данные импортируются из листа Excel Data на существующем связанном сервере EXCELLINK в новую таблицу базы данных SQL Server с именем Data_ls .
Вы можете создать связанный сервер в SQL Server Management Studio или запустить системную хранимую процедуру sp_addlinkedserver , как показано в примере ниже.
Дополнительные сведения о связанных серверах см. в указанных ниже разделах.
Примеры и дополнительные сведения о связанных серверах и распределенных запросах см. указанных ниже разделах.
Предварительное требование — сохранение данных Excel как текста
Чтобы использовать другие методы, описанные на этой странице (инструкцию BULK INSERT, средство BCP или фабрику данных Azure), сначала экспортируйте данные Excel в текстовый файл.
В Excel последовательно выберите Файл | Сохранить как и выберите как целевой тип файла Текст (разделитель — табуляция) (*.txt) или CSV (разделитель — запятая) (*.csv) .
Если вы хотите экспортировать несколько листов из книги, выполните эту процедуру для каждого листа. Команда Сохранить как экспортирует только активный лист.
Чтобы оптимизировать использование средств импорта, сохраняйте листы, которые содержат только заголовки столбцов и строки данных. Если сохраненные данные содержат заголовки страниц, пустые строки, заметки и пр., позже при импорте данных вы можете получить непредвиденные результаты.
Мастер импорта неструктурированных файлов
Импортируйте данные, сохраненные как текстовые файлы, выполнив инструкции на страницах мастера импорта неструктурированных файлов.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете импортировать их с помощью мастера импорта неструктурированных файлов.
Дополнительные сведения о мастере импорта неструктурированных файлов см. в разделе Мастер импорта неструктурированных файлов в SQL.
Команда BULK INSERT
BULK INSERT — это команда Transact-SQL, которую можно выполнить в SQL Server Management Studio. В приведенном ниже примере данные загружаются из файла Data.csv с разделителями-запятыми в существующую таблицу базы данных.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать BULK INSERT для их импорта. BULK INSERT не может считывать файлы Excel напрямую. С помощью команды BULK INSERT можно импортировать CSV-файл, который хранится локально или в хранилище BLOB-объектов Azure.
Дополнительные сведения и примеры для SQL Server и базы данных SQL см. в следующих разделах:
Средство BCP
BCP — это программа, которая запускается из командной строки. В приведенном ниже примере данные загружаются из файла Data.csv с разделителями-запятыми в существующую таблицу базы данных Data_bcp .
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать BCP для их импорта. BCP не может считывать файлы Excel напрямую. Используется для импорта в SQL Server или базу данных SQL из текстового файла (CSV), сохраненного в локальном хранилище.
Для текстового файла (CSV), хранящегося в хранилище BLOB-объектов Azure, используйте BULK INSERT или OPENROWSET. Примеры см. в разделе Пример.
Дополнительные сведения о программе BCP см. в указанных ниже разделах.
Мастер копирования (Фабрика данных Azure)
Импортируйте данные, сохраненные как текстовые файлы, выполнив инструкции на страницах мастера копирования Фабрики данных Azure.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать фабрику данных Azure для их импорта. Фабрика данных не может считывать файлы Excel напрямую.
Дополнительные сведения о мастере копирования см. в указанных ниже разделах.
Фабрика данных Azure
Если вы уже работали с фабрикой данных Azure и не хотите запускать мастер копирования, создайте конвейер с действием копирования из текстового файла в SQL Server или Базу данных SQL Azure.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать фабрику данных Azure для их импорта. Фабрика данных не может считывать файлы Excel напрямую.
Дополнительные сведения об использовании этих источников и приемников фабрики данных см. в указанных ниже разделах.
Чтобы научиться копировать данные с помощью фабрики данных Azure, см. указанные ниже разделы.
Распространенные ошибки
Эта ошибка возникает, так как не установлен поставщик OLE DB. Установите его через Распространяемый пакет ядра СУБД Microsoft Access 2010. Не забудьте установить 64-разрядную версию, если Windows и SQL Server — 64-разрядные.
Полный текст ошибки.
Не удалось создать экземпляр поставщика OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(null)".
Это означает, что Microsoft OLEDB не был настроен должным образом. Чтобы устранить проблему, выполните приведенный ниже код Transact-SQL.
Полный текст ошибки.
32-разрядный поставщик OLE DB "Microsoft.ACE.OLEDB.12.0" не может быть загружен в процессе на 64-разрядной версии SQL Server.
Это происходит, когда 32-разрядная версия поставщика OLD DB устанавливается вместе с 64-разрядной версией SQL Server. Чтобы устранить эту проблему, удалите 32-разрядную версию и вместо нее установите 64-разрядную версию поставщика OLE DB.
Полный текст ошибки.
Поставщик OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(null)" сообщил об ошибке. Поставщик не предоставил данных об ошибке.
Не удалось проинициализировать объект источника данных поставщика OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "(null)".
Обе эти ошибки обычно указывают на ошибку разрешений между процессом SQL Server и файлом. Убедитесь, что учетная запись, с которой выполняется служба SQL Server, имеет разрешение на полный доступ к файлу. Мы не рекомендуем импортировать файлы с настольного компьютера.
Office 365 ProPlus переименован в Майкрософт 365 корпоративные приложения. Для получения дополнительной информации об этом изменении прочитайте этот блог.
Аннотация
В этой статье обсуждаются многочисленные методы передачи данных в Microsoft Excel из приложения Microsoft Visual Basic. В этой статье также представлены преимущества и недостатки для каждого метода, чтобы вы могли выбрать решение, которое лучше всего работает для вас.
Дополнительные сведения
Наиболее распространенным методом для передачи данных в Excel является автоматизация. Автоматизация обеспечивает наибольшую гибкость для указания расположения данных в книге, а также возможности форматировать книгу и создавать различные параметры во время работы. С помощью автоматизации можно использовать несколько подходов для передачи данных:
- Перенос ячейки данных по ячейке
- Передача данных в массиве в диапазон ячеек
- Передача данных в наборе записей ADO в диапазон ячеек с помощью метода CopyFromRecordset
- Создание таблицы QueryTable на Excel, которая содержит результат запроса в источнике данных ODBC или OLEDB
- Передача данных в буфер обмена, а затем вклейка содержимого буфера обмена в Excel таблицу
Существуют также методы, которые можно использовать для передачи данных в Excel, которые не обязательно требуют автоматизации. Если вы работаете на сервере приложений, это может быть хорошим подходом для отвода основной части обработки данных от клиентов. Для передачи данных без автоматизации можно использовать следующие методы:
- Передача данных в текстовый файл с запятой или запятой, который можно Excel позже разбора в ячейки на таблице
- Передача данных на таблицу с помощью ADO
- Передача данных в Excel с помощью динамических Exchange данных (DDE)
В следующих разделах подробно по каждому из этих решений.
Примечание При использовании Microsoft Office Excel 2007 года можно использовать новый формат файла Excel 2007 (*.xlsx) при сохранения книг. Для этого найдите следующую строку кода в следующих примерах кода:
Замените этот код следующей строкой кода:
Кроме того, база данных Northwind не включена в Office 2007 г. по умолчанию. Однако вы можете скачать базу данных Northwind из Microsoft Office Online.
Использование автоматизации для передачи ячейки данных ячейкой
С помощью автоматизации можно передавать данные на одну ячейку одновременно:
Перенос ячейки данных по ячейкам может быть вполне приемлемым подходом, если объем данных невелик. Вы можете разместить данные в любой точке книги и можете условно отформатировать ячейки во время запуска. Однако этот подход не рекомендуется, если у вас есть большой объем данных для передачи в Excel книгу. Каждый объект Range, приобретаемый во время запуска, приводит к запросу интерфейса, чтобы перенос данных таким образом был медленным. Кроме того, microsoft Windows 95 и Windows 98 имеют ограничение в 64K для запросов интерфейса. Если вы достигнете или превысите это ограничение в 64k для запросов интерфейса, сервер автоматизации (Excel) может перестать отвечать или вы можете получить ошибки, указывающие на низкую память.
Еще раз, перенос ячейки данных по ячейкам приемлем только для небольших объемов данных. Если необходимо перенести большие наборы данных в Excel, следует рассмотреть одно из решений, представленных позже.
Дополнительные примеры кода для автоматизации Excel см. в Microsoft Excel Visual Basic.
Автоматизация для передачи массива данных в диапазон на таблице
Массив данных может быть передан сразу нескольким ячейкам:
При передаче данных с помощью массива, а не ячейки по ячейке можно реализовать огромный прирост производительности с большим количеством данных. Рассмотрим эту строку из кода выше, который передает данные в 300 ячеек в таблице:
Эта строка представляет два запроса интерфейса (один для объекта Range, возвращаемого методом Range, и другой для объекта Range, возвращаемого методом Resize). С другой стороны, для передачи ячейки данных по ячейке потребуются запросы на 300 интерфейсов в объекты Range. По возможности вы можете получать выгоду от передачи данных оптом и уменьшения количества запросов на интерфейс.
Автоматизация для передачи наборов записей ADO в диапазон таблиц
Excel 2000 г. представлен метод CopyFromRecordset, который позволяет переносить набор записей ADO (или DAO) в диапазон на таблице. В следующем коде показано, как можно автоматизировать Excel 2000, Excel 2002 или Office Excel 2003 г. и передать содержимое таблицы заказов в базе данных образцов Northwind с помощью метода CopyFromRecordset.
Примечание Если вы используете Office 2007 года в базе данных Northwind, необходимо заменить следующую строку кода в примере кода:
Замените эту строку кода следующей строкой кода:
Excel 97 также предоставляет метод CopyFromRecordset, но использовать его можно только с набором записей DAO. CopyFromRecordset с Excel 97 не поддерживает ADO.
Дополнительные сведения об использовании ADO и метода CopyFromRecordset см. в статьи How to transfer data from an ADO recordset to Excel с помощью автоматизации.
Автоматизация для создания queryTable на таблице
Объект QueryTable представляет таблицу, созданную из данных, возвращаемых из внешнего источника данных. При автоматизации Microsoft Excel можно создать queryTable, просто предоставив строку подключения к OLEDB или источнику данных ODBC вместе с SQL строкой. Excel берет на себя ответственность за создание наборов записей и вставку его в таблицу в заявляемом вами расположении. Использование QueryTables предоставляет ряд преимуществ по сравнению с методом CopyFromRecordset:
- Excel обрабатывает создание наборов записей и его размещение в таблицу.
- Запрос можно сохранить с помощью QueryTable, чтобы затем обновить его, чтобы получить обновленный набор записей.
- При добавлении в таблицу нового queryTable можно указать, что данные, уже существующие в ячейках на этом компьютере, будут перенесены для размещения новых данных (подробнее см. свойство RefreshStyle).
В следующем коде показано, как можно автоматизировать Excel 2000, Excel 2002 или Office Excel 2003 г., чтобы создать новый queryTable в Excel таблице с использованием данных из базы данных образцов Northwind:
Использование буфера обмена
Буфер Windows также может использоваться в качестве механизма передачи данных на таблицу. Чтобы вклеить данные в несколько ячеек на таблицу, можно скопировать строку, в которой столбцы делимитированы символами вкладок, а строки делимитированы возвращаемой каретой. В следующем коде показано, как Visual Basic использовать объект Clipboard для передачи данных в Excel:
Создание разнонародных текстовых файлов, Excel можно разрезать на строки и столбцы
Excel могут открывать файлы с запятой или запятой и правильно разбора данных в ячейки. Вы можете воспользоваться этой функцией, если вы хотите передать большой объем данных на таблицу при использовании малого, если таково, автоматизации. Это может быть хорошим подходом для клиентского приложения-сервера, так как текстовый файл может быть создан на стороне сервера. Затем можно открыть текстовый файл на клиенте, используя автоматизацию там, где это необходимо.
В следующем коде показано, как создать текстовый файл с запятой из наборов записей ADO:
Обратите внимание, что Office версии базы данных Northwind 2007 года необходимо заменить следующую строку кода в примере кода:
Замените эту строку кода следующей строкой кода:
Если в текстовом файле есть расширение .CSV, Excel открывает файл без отображения мастера импорта текста и автоматически предполагает, что файл запятой. Аналогично, если в вашем файле .TXT расширение, Excel автоматически разборите файл с помощью делимитеров вкладок.
В предыдущем примере кода Excel был запущен с помощью заявления Shell, а имя файла использовалось в качестве аргумента командной строки. Автоматизация не использовалась в предыдущем примере. Однако при желании можно использовать минимальное количество автоматизации для открытия текстового файла и сохранения его в формате Excel книги:
Передача данных на таблицу с помощью ADO
С помощью поставщика DB Microsoft Jet OLE можно добавить записи в таблицу в существующей Excel книге. "Таблица" в Excel — это просто диапазон с определенным именем. Первая строка диапазона должна содержать заглавные (или имена полей), а все последующие строки содержат записи. Ниже показано, как создать книгу с пустой таблицей MyTable.
Excel 97, Excel 2000 и Excel 2003 г.
Запустите новую книгу в Excel.
Добавьте следующие заглавные таблицы в ячейки A1:B1 листа1:
A1: FirstName B1: LastName
Формат ячейки B1 в виде правой выровненной.
В меню Insert выберите Имена, а затем выберите Определение. Введите имя MyTable и нажмите кнопку ОК.
Сохраните новую книгу как C:\Book1.xls и Excel.
Чтобы добавить записи в MyTable с помощью ADO, можно использовать код, аналогичный следующему:
Excel 2007
В Excel 2007 г. запустите новую книгу.
Добавьте следующие заглавные таблицы в ячейки A1:B1 листа1:
A1: FirstName B1: LastName
Формат ячейки B1 в виде правой выровненной.
На ленте нажмите вкладку Формулы и нажмите кнопку Определить имя. Введите имя MyTable и нажмите кнопку ОК.
Сохраните новую книгу как C:\Book1.xlsx, а затем Excel.
Чтобы добавить записи в таблицу MyTable с помощью ADO, используйте код, похожий на следующий пример кода.
При добавлении записей в таблицу таким образом форматирование в книге сохраняется. В предыдущем примере новые поля, добавленные в столбец B, форматированы с правильным выравниванием. Каждая запись, добавляемая в строку, заимствует формат из строки над ней.
Следует отметить, что при добавлении записи в ячейку или ячейки в таблицу она переописывание любых данных, ранее в этих ячейках; Другими словами, строки в таблице не "сдвинуты" при добавлении новых записей. Это следует иметь в виду при разработке макета данных на ваших таблицах.
Метод обновления данных в Excel таблице с помощью ADO или с помощью DAO не работает в Visual Basic для среды приложения в access после установки Office 2003 Пакет обновления 2 (SP2) или после установки обновления для Access 2002, включенного в статью Microsoft Knowledge Base 904018. Метод хорошо работает в Visual Basic среде приложений из других Office приложений, таких как Word, Excel и Outlook.
Дополнительные сведения см. в следующей статье:
Дополнительные сведения об использовании ADO для доступа к книге Excel см. в книге How To Query and Update Excel Data Using ADO from ASP.
Использование DDE для передачи данных в Excel
DDE является альтернативой автоматизации в качестве средства для общения с Excel и передачи данных; однако с появлением автоматизации и com DDE больше не является предпочтительным методом для общения с другими приложениями и должен использоваться только в том случае, если у вас нет другого решения.
Чтобы передать данные в Excel DDE, вы можете использовать метод LinkPoke для отправки данных в определенный диапазон ячейки или метод LinkExecute для отправки команд, которые Excel будут выполняться.
В следующем примере кода показано, как установить беседу DDE с Excel, чтобы можно было втыкать данные в ячейки на таблицу и выполнять команды. С помощью этого примера для успешного запуска беседы по DDE в linkTopic Excel|MyBook.xls книга с именем MyBook.xls должна уже открываться в запущенном экземпляре Excel.
При использовании Excel 2007 можно использовать новый формат .xlsx для сохранения книг. Убедитесь, что имя файла обновляется в следующем примере кода. В этом примере Text1 представляет собой управление текстовым полем на Visual Basic форме:
При использовании LinkPoke с Excel, вы указываете диапазон в строке-столбце (R1C1) для LinkItem. Если вы подтыкаете данные к нескольким ячейкам, можно использовать строку, в которой столбцы делимитированы вкладками, а строки делимитированы возвращаемой каретой.
При использовании LinkExecute для Excel выполнения команды необходимо Excel команду в синтаксисе Excel макроса (XLM). Документация XLM не включается в Excel версии 97 и более поздней версии.
DDE не рекомендуется для общения с Excel. Автоматизация обеспечивает наибольшую гибкость и предоставляет дополнительный доступ к новым функциям, которые Excel предложить.
Экспорт данных из активного листа в CSV
По умолчанию книги Excel сохраняются как файл XLSX в Excel 2007 или более поздних версиях. Если вам нужно экспортировать данные активного листа в файл CSV, вы можете использовать Сохранить как функция следующим образом:
1. Активируйте рабочий лист, который вы хотите экспортировать в файл CSV, и нажмите Файл > Сохранить как> Обзор.
2. В диалоговом окне Сохранить как:
Kutools for Excel
Выделяться из толпы
Попрощайтесь с ужасными VBA и формулами!
(2) Назовите CSV-файл в Имя файла коробка;
(3) Выберите CSV (с разделителями-запятыми) из Сохранить как раскрывающийся список;
(4) Щелкните значок Сохраните кнопка. Смотрите скриншот:
3. Теперь появляется диалоговое окно с предупреждением, что сохранится только активный лист. Пожалуйста, нажмите на OK кнопку, чтобы продолжить.
4. Откроется другое диалоговое окно с предупреждением, что некоторые функции могут быть потеряны. Пожалуйста, нажмите на Да кнопку, чтобы завершить сохранение.
Пока все данные на активном листе сохранены в файле CSV.
Экспорт данных активного листа в CSV UTF-8
Если вам требуется, чтобы экспортированный файл CSV был закодирован как UTF-8, этот метод поможет вам в этом.
1. В Excel активируйте рабочий лист, данные которого вы сохраните как CSV, и нажмите Файл > Сохранить как > Приложения.
2. В диалоговом окне Сохранить как:
(1) Откройте папку назначения, в которой вы сохраните новый файл;
(2) Назовите файл в Имя файла коробка;
(3) Укажите Текст в Юникоде (*. Txt) из Сохранить как типвыпадающий список e;
(4) Щелкните значок Сохраните кнопка. Смотрите скриншот:
3.Теперь появляются диалоговые окна с предупреждением, что будет сохранен только активный рабочий лист, а некоторые функции будут потеряны. Пожалуйста, нажмите на OK и Да кнопки последовательно.
4. Закройте окно Excel. И дважды щелкните новый файл .txt, чтобы открыть его в окне Блокнота (или в другом текстовом редакторе по умолчанию, как вы предварительно установили).
5. В окне Блокнота нажмите Файл > Сохранить как.
6. В диалоговом окне Сохранить как:
(1) Укажите Сохранить как as Все файлы (*. *);
(2) Измените расширение имени файла на . Csv в Имя файла коробка;
(3) Выберите UTF-8 из Кодирование раскрывающийся список;
(4) Щелкните значок Сохраните кнопку.
Теперь все данные на активном листе экспортируются в виде файла CSV в кодировке UTF-8.
Экспортировать отфильтрованную таблицу только в CSV
В некоторых случаях вы могли отфильтровать таблицу по определенным критериям и хотите экспортировать только отфильтрованные данные в файл CSV. Например, я отфильтровал все записи о продажах персика из таблицы продаж фруктов, как показано ниже. Теперь я покажу вам, как экспортировать только отфильтрованные записи о продажах персиков в отдельный файл CSV этим методом.
1. Выберите все отфильтрованные записи в таблице и нажмите Ctrl + C ключи вместе, чтобы скопировать их.
2. Создайте новый лист, выберите в нем ячейку A1 и нажмите Ctrl + V ключи вместе, чтобы вставить скопированные записи.
Теперь вы увидите, что на новый лист вставляются только отфильтрованные записи. Смотрите скриншот:
3. Оставайтесь на новом листе и нажмите Файл > Сохранить как > Приложения.
4. В диалоговом окне Сохранить как:
(1) Выберите папку назначения, в которую вы сохраните файл CSV;
(2) Введите имя файла CSV в поле Имя файла коробка;
(3) Выберите CSV (с разделителями-запятыми) (* .csv) из Сохранить как раскрывающийся список;
(4) Щелкните значок Сохраните кнопку.
5. Теперь появляются диалоговые окна с предупреждением, что будет сохранен только активный лист, а некоторые функции будут потеряны. Пожалуйста, нажмите на OK и Да кнопки последовательно.
Теперь в новый файл CSV экспортируются только отфильтрованные данные в таблице.
Экспорт выбранных данных в CSV
Освободи Себя Диапазон экспорта в файл особенность Kutools for Excel может помочь нам легко экспортировать выделение в файл .csv в Excel.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
1. Выберите диапазон, который вы хотите экспортировать в CSV, и нажмите Kutools Plus > Импорт/Экспорт > Диапазон экспорта в файл, см. снимок экрана:
2. В диалоговом окне «Экспортировать диапазон в файл»:
(1) Проверьте CSV (с разделителями-запятыми) вариант;
(2) Щелкните значок Приложения кнопка указать папку назначения, в которую вы сохраните новый файл CSV;
(3) Необязательно проверять Откройте файл после экспорта. вариант;
(4) Щелкните значок Ok кнопку.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
3. Во втором диалоговом окне «Диапазон экспорта в файл» введите имя нового файла CSV и нажмите кнопку Ok кнопку.
Теперь все данные в указанной выборке экспортируются в новый файл CSV.
Освободи Себя Диапазон экспорта в файл Функция может экспортировать диапазон данных в одну книгу Excel, файл CSV, простой или полностью форматированный файл HTML. Получите его сейчас!
Экспорт каждого листа в отдельный файл CSV
Этот метод рекомендует Kutools для Excel Разделить книгу возможность быстрого экспорта каждого рабочего листа в отдельный файл CVS в несколько кликов.
Kutools for Excel - Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Get It Now
1. Нажмите Kutools Plus > Разделить книгу. Смотрите скриншот:
2. В диалоговом окне «Разделить книгу» сделайте следующее:
(1) Проверьте рабочие листы, которые вы будете экспортировать в CSV, в разделе «Имя рабочего листа»;
(2) Проверьте Сохранить как и выберите CSV (Macintosh (* .csv) из раскрывающегося списка снизу.
(3) Щелкните значок Трещина кнопку.
3. В диалоговом окне «Обзор папки» укажите папку назначения, в которой вы будете сохранять экспортированные файлы CSV, и нажмите кнопку OK кнопку.
И теперь каждый проверенный рабочий лист массово экспортируется в отдельный файл CSV. Смотрите скриншот:
Освободи Себя Разделить книгу Функция может сохранять или экспортировать каждый рабочий лист активной книги в книгу Excel, книгу Excel 97-2003 или файл TXT / CSV / PDF отдельно. Получите его сейчас!
Читайте также: