Формат данных для выгрузки excel

Время на прочтение
9 мин

Количество просмотров 62K

Есть в IT-отрасли задачи, которые на фоне успехов в big data, machine learning, blockchain и прочих модных течений выглядят совершенно непривлекательно, но на протяжении десятков лет не перестают быть актуальными для целой армии разработчиков. Речь пойдёт о старой как мир задаче формирования и выгрузки Excel-документов, с которой сталкивался каждый, кто когда-либо писал приложения для бизнеса.

Какие возможности построения файлов Excel существуют в принципе?

  1. VBA-макросы. В наше время по соображениям безопасности идея использовать макросы чаще всего не подходит.
  2. Автоматизация Excel внешней программой через API. Требует наличия Excel на одной машине с программой, генерирующей Excel-отчёты. Во времена, когда клиенты были толстыми и писались в виде десктопных приложений Windows, такой способ годился (хотя не отличался скоростью и надёжностью), в нынешних реалиях это с трудом достижимый случай.
  3. Генерация XML-Excel-файла напрямую. Как известно, Excel поддерживает XML-формат сохранения документа, который потенциально можно сгенерировать/модифицировать с помощью любого средства работы с XML. Этот файл можно сохранить с расширением .xls, и хотя он, строго говоря, при этом не является xls-файлом, Excel его хорошо открывает. Такой подход довольно популярен, но к недостаткам следует отнести то, что всякое решение, основанное на прямом редактировании XML-Excel-формата, является одноразовым «хаком», лишенным общности.
  4. Наконец, возможна генерация Excel-файлов с использованием open source библиотек, из которых особо известна Apache POI. Разработчики Apache POI проделали титанический труд по reverse engineering бинарных форматов документов MS Office, и продолжают на протяжении многих лет поддерживать и развивать эту библиотеку. Результат этого reverse engineering-а, например, используется в Open Office для реализации сохранения документов в форматах, совместимых с MS Office.

На мой взгляд, именно последний из способов является сейчас предпочтительным для генерации MS Office-совместимых документов. С одной стороны, он не требует установки никакого проприетарного ПО на сервер, а с другой стороны, предоставляет богатый API, позволяющий использовать все функциональные возможности MS Office.

Но у прямого использования Apache POI есть и недостатки. Во-первых, это Java-библиотека, и если ваше приложение написано не на одном из JVM-языков, вы ей вряд ли сможете воспользоваться. Во-вторых, это низкоуровневая библиотека, работающая с такими понятиями, как «ячейка», «колонка», «шрифт». Поэтому «в лоб» написанная процедура генерации документа быстро превращается в обильную «лапшу» трудночитаемого кода, где отсутствует разделение на модель данных и представление, трудно вносить изменения и вообще — боль и стыд. И прекрасный повод делегировать задачу самому неопытному программисту – пусть ковыряется.

Но всё может быть совершенно иначе. Проект Xylophone под лицензией LGPL, построенный на базе Apache POI, основан на идее, которая имеет примерно 15-летнюю историю. В проектах, где я участвовал, он использовался в комбинации с самыми разными платформами и языками – а счёт разновидностей форм, сделанных с его помощью в самых разнообразных проектах, идёт, наверное, уже на тысячи. Это Java-проект, который может работать как в качестве утилиты командной строки, так и в качестве библиотеки (если у вас код на JVM-языке — вы можете подключить её как Maven-зависимость).

Xylophone реализует принцип отделения модели данных от их представления. В процедуре выгрузки необходимо сформировать данные в формате XML (не беспокоясь о ячейках, шрифтах и разделительных линиях), а Xylophone, при помощи Excel-шаблона и дескриптора, описывающего порядок обхода вашего XML-файла с данными, сформирует результат, как показано на диаграмме:

Шаблон документа (xls/xlsx template) выглядит примерно следующим образом:

Как правило, заготовку такого шаблона предоставляет сам заказчик. Вовлечённый заказчик с удовольствием принимает участие в создании шаблона: начиная с выбора нужной формы из «Консультанта» или придумывания собственной с нуля, и заканчивая размерами шрифтов и ширинами разделительных линий. Преимущество шаблона в том, что мелкие правки в него легко вносить уже тогда, когда отчёт полностью разработан.

Когда «оформительская» работа выполнена, разработчику остаётся

  1. Создать процедуру выгрузки необходимых данных в формате XML.
  2. Создать дескриптор, описывающий порядок обхода элементов XML-файла и копирования фрагментов шаблона в результирующий отчёт
  3. Обеспечить привязку ячеек шаблона к элементам XML-файла с помощью XPath-выражений.

С выгрузкой в XML всё более-менее понятно: достаточно выбрать адекватное XML-представление данных, необходимых для заполнения формы. Что такое дескриптор?

Если бы в форме, которую мы создаём, не было повторяющихся элементов с разным количеством (таких, как строки накладной, которых разное количество у разных накладных), то дескриптор выглядел бы следующим образом:

<element name="root">
    <output range="A1:Z100"/>
</element>

Здесь root – название корневого элемента нашего XML-файла с данными, а диапазон A1:Z100 – это прямоугольный диапазон ячеек из шаблона, который будет скопирован в результат. При этом, как можно видеть из предыдущей иллюстрации, подстановочные поля, значения которых заменяются на данные из XML-файла, имеют формат ~{XPath-выражение} (тильда, фигурная скобка, XPath-выражение относительно текущего элемента XML, закрывающая фигурная скобка).

Что делать, если в отчёте нам нужны повторяющиеся элементы? Естественным образом их можно представить в виде элементов XML-файла с данными, а помочь проитерировать по ним нужным образом помогает дескриптор. Повторение элементов в отчёте может иметь как вертикальное направление (когда мы вставляем строки накладной, например), так и горизонтальное (когда мы вставляем столбцы аналитического отчёта). При этом мы можем пользоваться вложенностью элементов XML, чтобы отразить сколь угодно глубокую вложенность повторяющихся элементов отчёта, как показано на диаграмме:

Красными квадратиками отмечены ячейки, которые будут являться левым верхним углом очередного прямоугольного фрагмента, который пристыковывает генератор отчёта.

Есть и ещё один возможный вариант повторяющихся элементов: листы в книге Excel. Возможность организовать такую итерацию тоже имеется.

Рассмотрим чуть более сложный пример. Допустим, нам надо получить сводный отчёт наподобие следующего:

Пусть диапазон лет для выгрузки выбирает пользователь, поэтому в этом отчёте динамически создаваемыми являются как строки, так и столбцы. XML-представление данных для такого отчёта может выглядеть следующим образом:

testdata.xml

<?xml version="1.0" encoding="UTF-8"?>
<report>
	<column year="2016"/>
	<column year="2017"/>
	<column year="2018"/>
	<item name="Товар 1">
		<year amount="365"/>
		<year amount="286"/>
		<year amount="207"/>
	</item>
	<item name="Товар 2">
		<year amount="95"/>
		<year amount="606"/>
		<year amount="840"/>
	</item>
	<item name="Товар 3">
		<year amount="710"/>
		<year amount="437"/>
		<year amount="100"/>
	</item>
	<totals>
		<year amount="1170"/>
		<year amount="1329"/>
		<year amount="1147"/>		
	</totals>
</report>

Мы вольны выбирать названия тэгов по своему вкусу, структура также может быть произвольной, но с оглядкой на простоту конвертации в отчёт. Например, выводимые на лист значения я обычно записываю в атрибуты, потому что это упрощает XPath-выражения (удобно, когда они имеют вид @имяатрибута).

Шаблон такого отчёта будет выглядеть так (сравните XPath-выражения с именами атрибутов соответствующих тэгов):

Теперь наступает самая интересная часть: создание дескриптора. Т. к. это практически полностью динамически собираемый отчёт, дескриптор довольно сложен, на практике (когда у нас есть только «шапка» документа, его строки и «подвал») всё обычно гораздо проще. Вот какой в данном случае необходим дескриптор:

descriptor.xml

<?xml version="1.0" encoding="UTF-8"?>
<element name="report">
	<!-- Создаём лист -->
	<output worksheet="Отчет" sourcesheet="Лист1"/>
	<!-- И за ним слева направо заголовки столбцов -->
	<iteration mode="horizontal">
		<element name="(before)">
			<!-- Выводим пустую ячейку в ЛВУ сводной таблицы -->
			<output range="A1"/>
		</element>
		<element name="column">
			<output range="B1"/>
		</element>
	</iteration>
	<!-- Выводим строки: итерация с режимом вывода умолчанию, сверху вниз -->
	<iteration mode="vertical">
		<element name="item">
			<!-- И по строке - слева направо -->
			<iteration mode="horizontal">
				<element name="(before)">
					<!-- Заголовок строки -->
					<output range="A2"/>
				</element>
				<!-- И за ним слева направо строку с данными -->
				<element name="year">
					<output range="B2"/>
				</element>
			</iteration>
		</element>
	</iteration>
	<iteration>
		<element name="totals">
			<iteration mode="horizontal">
				<element name="(before)">
					<!-- Заголовок строки -->
					<output range="A3"/>
				</element>
				<!-- И за ним слева направо строку с данными -->
				<element name="year">
					<output range="B3"/>
				</element>
			</iteration>
		</element>
	</iteration>
</element>

Полностью элементы дескриптора описаны в документации. Вкратце, основные элементы дескриптора означают следующее:

  • element — переход в режим чтения элемента XML-файла. Может или являться корневым элементом дескриптора, или находиться внутри iteration. С помощью атрибута name могут быть заданы разнообразные фильтры для элементов, например
    • name="foo" — элементы с именем тэга foo
    • name="*" — все элементы
    • name="tagname[@attribute='value']" — элементы с определённым именем и значением атрибута
    • name="(before)", name="(after)" — «виртуальные» элементы, предшествующие итерации и закрывающие итерацию.
  • iteration — переход в режим итерации. Может находиться только внутри element. Могут быть выставлены различные параметры, например
    • mode="horizontal" — режим вывода по горизонтали (по умолчанию — vertical)
    • index=0 — ограничить итерацию только самым первым встреченным элементом
  • output — переход в режим вывода. Основные атрибуты следующие:
    • sourcesheet —лист книги шаблона, с которого берётся диапазон вывода. Если не указывать, то применяется текущий (последний использованный) лист.
    • range – диапазон шаблона, копируемый в результирующий документ, например “A1:M10”, или “5:6”, или “C:C”. (Применение диапазонов строк типа “5:6” в режиме вывода horizontal и диапазонов столбцов типа “C:C” в режиме вывода vertical приведёт к ошибке).
    • worksheet – если определён, то в файле вывода создаётся новый лист и позиция вывода смещается в ячейку A1 этого листа. Значение этого атрибута, равное константе или XPath-выражению, подставляется в имя нового листа.

В действительности всевозможных опций в дескрипторе гораздо больше, смотрите документацию.

Ну что же, настало время скачать Xylophone и запустить формирование отчёта.
Возьмите архив с bintray или Maven Central (NB: на момент прочтения этой статьи возможно наличие более свежих версий). В папке /bin находится shell-скрипт, при запуске которого без параметров вы увидите подсказку о параметрах командной строки. Для получения результата нам надо «скормить» ксилофону все приготовленные ранее ингредиенты:

xylophone -data testdata.xml -template template.xlsx -descr descriptor.xml -out report.xlsx

Открываем файл report.xlsx и убеждаемся, что получилось именно то, что нам нужно:

Так как библиотека ru.curs:xylophone доступна на Maven Central под лицензией LGPL, её можно без проблем использовать в программах на любом JVM-языке. Пожалуй, самый компактный полностью рабочий пример получается на языке Groovy, код в комментариях не нуждается:

@Grab('ru.curs:xylophone:6.1.3')
import ru.curs.xylophone.XML2Spreadsheet
baseDir = '.'
new File(baseDir, 'testdata.xml').withInputStream {
    input ->
        new File(baseDir, 'report.xlsx').withOutputStream {
            output ->
                XML2Spreadsheet.process(input,
                        new File(baseDir, 'descriptor.xml'),
                        new File(baseDir, 'template.xlsx'),
                        false, output)
        }
}
println 'Done.'

У класса XML2Spreadsheet есть несколько перегруженных вариантов статического метода process, но все они сводятся к передаче всё тех же «ингредиентов», необходимых для подготовки отчёта.

Важная опция, о которой я до сих пор не упомянул — это возможность выбора между DOM и SAX парсерами на этапе разбора файла с XML-данными. Как известно, DOM-парсер загружает весь файл в память целиком, строит его объектное представление и даёт возможность обходить его содержимое произвольным образом (в том числе повторно возвращаясь в один и тот же элемент). SAX-парсер никогда не помещает файл с данными целиком в память, вместо этого обрабатывает его как «поток» элементов, не давая возможности вернуться к элементу повторно.

Использование SAX-режима в Xylophone (через параметр командной строки -sax или установкой в true параметра useSax метода XML2Spreadsheet.process) бывает критически полезно в случаях, когда необходимо генерировать очень большие файлы. За счёт скорости и экономичности к ресурсам SAX-парсера скорость генерации файлов возрастает многократно. Это даётся ценой некоторых небольших ограничений на дескриптор (описано в документации), но в большинстве случаев отчёты удовлетворяют этим ограничениям, поэтому я бы рекомендовал использование SAX-режима везде, где это возможно.

Надеюсь, что способ выгрузки в Excel через Xylophone вам понравился и сэкономит много времени и нервов — как сэкономил нам.

И напоследок ещё раз ссылки:

  • исходники — здесь: github.com/CourseOrchestra/xylophone
  • документация — здесь: courseorchestra.github.io/xylophone
  • все примеры кода из этой статьи — здесь: github.com/inponomarev/xylophone-example.

Импорт и экспорт текстовых файлов (в формате TXT или CSV)

Импортировать данные из текстового файла в Excel можно двумя способами: открыть их в Excel или импортировать как диапазон внешних данных. Чтобы экспортировать данные из Excel в текстовый файл, воспользуйтесь командой Сохранить как и измените тип файла в меню.

Чаще всего используются два формата текстовых файлов:

  • текстовые файлы с разделителями (TXT), в которых для разделения полей текста обычно используется знак табуляции (знак ASCII с кодом 009);

  • текстовые файлы с разделителями-запятыми (CSV), в которых в качестве разделителя полей текста обычно используется запятая (,).

Вы можете изменить знак разделения, используемый в TXT- и CSV-файлах. Это может потребоваться для обеспечения успешного выполнения импорта и экспорта.

Примечание: Можно импортировать и экспортировать до 1 048 576 строк и 16 384 столбцов.

Импорт текстового файла путем его открытия в Excel

Текстовый файл, созданный в другой программе, можно открыть как книгу Excel с помощью команды Открыть. При открытии текстового файла в Excel его формат не изменяется — это можно заметить по заголовку окна Excel, где имя указывается с расширением текстового файла (например, TXT или CSV).

  1. Перейдите в >открыть и перейдите в папку с текстовым файлом.

  2. В диалоговом окне Открытие выберите текстовые файлы в списке тип файла.

  3. Найдите нужный файл и дважды щелкните его.

    • Если это текстовый файл (с расширением ТХТ), запустится мастер импорта текста. Окончив работу с мастером, нажмите кнопку Готово, чтобы завершить импорт. Дополнительные сведения о разных вариантах и дополнительных параметрах см. в мастере импорта текста.

    • Если файл имеет расширение CSV, Excel автоматически откроет его и отобразит данные в новой книге.

      Примечание: При открытии CSV-файлов для определения способа импорта каждого столбца используются заданные по умолчанию параметры форматирования данных. Если вы хотите применить другие параметры, используйте мастер импорта текста. Например, мастер потребуется, если столбец данных в CSV-файле имеет формат МДГ, а в Excel по умолчанию используется формат ГМД или необходимо преобразовать в текст столбец чисел, содержащих начальные нули, чтобы сохранить их. Чтобы принудительно запустить мастер импорта текста, можно изменить расширение имени файла с CSV на TXT или импортировать текстовый файл путем подключения к нем (дополнительные сведения см. в следующем разделе).

Импорт текстового файла путем подключения к нем (Power Query)

Вы можете импортировать данные из текстового файла в существующий.

  1. На вкладке Данные в группе & преобразование данных выберите из текстового/CSV-документа.

  2. В диалоговом окне Импорт данных найдите и дважды щелкните текстовый файл, который нужно импортировать,и нажмите кнопку Импорт.

  3. В диалоговом окне предварительного просмотра есть несколько вариантов:

    • Выберите Загрузить, если вы хотите загрузить данные непосредственно на новый.

    • Кроме того, выберите загрузить в, если вы хотите загрузить данные в таблицу, в смету или на существующий или новый листа Excel, или просто создать подключение. Вы также можете добавить данные в модель данных.

    • Выберите Преобразовать данные, если вы хотите загрузить данные в Power Query и отредактировать их перед их преобразованием в Excel.

Если Excel не преобразует определенный столбец данных в нужный формат, их можно преобразовать после импорта. Дополнительные сведения см. в статьях Преобразование чисел из текстового формата в числовой и Преобразование дат из текстового формата в формат даты.

Экспорт данных в текстовый файл путем его сохранения

Лист Excel можно преобразовать в текстовый файл, используя команду Сохранить как.

  1. Выберите Файл > Сохранить как.

  2. Нажмите кнопку Обзор.

  3. В диалоговом окне Сохранить как в поле Тип файла выберите формат текстового файла для этого документа. Например, щелкните Текст (с табу женой) или CSV (сзапятой).

    Примечание: Различные форматы текстовых файлов поддерживают разные возможности. Дополнительные сведения см. в статье Поддерживаемые Excel форматы файлов.

  4. Перейдите в папку, куда вы хотите сохранить файл, а затем нажмите кнопку Сохранить.

  5. Откроется диалоговое окно с напоминанием о том, что в текстовом файле будет сохранен только текущий лист. Если вы хотите сохранить именно текущий лист, нажмите кнопку ОК. Другие листы можно сохранить в отдельных текстовых файлах, повторив эту процедуру для каждого из них.

    Кроме того, под лентой может появиться предупреждение о том, что некоторые возможности могут быть потеряны при сохранение книги в формате CSV.

Дополнительные сведения о сохранении файлов в других форматах см. в статье Сохранение книги в другом формате файла.

Импорт текстового файла путем подключения к нему

Вы можете импортировать данные из текстового файла в существующий.

  1. Щелкните ячейку, в которую вы хотите поместить данные из текстового файла.

  2. На вкладке Данные в группе Получение внешних данных нажмите Из текста.

  3. В диалоговом окне Импорт данных найдите и дважды щелкните текстовый файл, который нужно импортировать,и нажмите кнопку Импорт.

    Следуйте инструкциям мастера импорта текста. Щелкните Кнопка на любой странице мастера импорта текста, чтобы получить дополнительные сведения об использовании мастера. Окончив работу с мастером, нажмите кнопку Готово, чтобы завершить импорт.

  4. В диалоговом окне Импорт данных:

    1. В группе Куда следует поместить данные? выполните одно из следующих действий:

      • Чтобы поместить данные в выбранные ячейки, щелкните На существующий лист.

      • Чтобы поместить данные в верхний левый угол нового листа, выберите вариант На новый лист.

    2. При необходимости нажмите кнопку Свойства, чтобы задать параметры обновления, форматирования и макета импортируемых данных.

    3. Нажмите кнопку ОК.

      Excel добавит диапазон внешних данных в указанное место.

Если Excel не преобразует столбец в необходимый формат, это можно сделать после импорта. Дополнительные сведения см. в статьях Преобразование чисел из текстового формата в числовой и Преобразование дат из текстового формата в формат даты.

Экспорт данных в текстовый файл путем его сохранения

Лист Excel можно преобразовать в текстовый файл, используя команду Сохранить как.

  1. Выберите Файл > Сохранить как.

  2. Откроется диалоговое окно Сохранение документа.

  3. В поле Тип файла выберите формат текстового файла для листа.

    • Например, выберите Текстовые файлы (с разделителями табуляции) или CSV (разделители — запятые).

    • Примечание: Различные форматы текстовых файлов поддерживают разные возможности. Дополнительные сведения см. в статье Поддерживаемые Excel форматы файлов.

  4. Перейдите в папку, куда вы хотите сохранить файл, а затем нажмите кнопку Сохранить.

  5. Откроется диалоговое окно с напоминанием о том, что в текстовом файле будет сохранен только текущий лист. Если вы хотите сохранить именно текущий лист, нажмите кнопку ОК. Другие листы можно сохранить в отдельных текстовых файлах, повторив эту процедуру для каждого из них.

  6. Откроется второе диалоговое окно с напоминанием о том, что сохраняемый лист может содержать возможности, которые не поддерживаются текстовыми форматами файлов. Если в новом текстовом файле нужно сохранить только данные листа, нажмите кнопку Да. Если вы не уверены и хотите получить дополнительные сведения о том, какие возможности Excel не поддерживаются форматами текстовых файлов, нажмите кнопку Справка.

Дополнительные сведения о сохранении файлов в других форматах см. в статье Сохранение книги в другом формате файла.

Способ изменения деления при импорте зависит от того, как вы импортируете текст.

  • Если вы используете get & Transform Data > From Text/CSV, после выбора текстового файла и нажатия кнопки Импорт выберитесимвол, который нужно использовать в списке …. Новый вариант можно сразу же увидеть в окне предварительного просмотра данных, чтобы убедиться в том, что вы сделаете нужный вариант, прежде чем продолжить.

  • Если вы импортируете текстовый файл с помощью мастера импорта текста, вы можете изменить его на шаге 2 мастера импорта текста. На этом шаге также можно изменить способ обработки последовательных разделителей (например, идущих подряд кавычек).

    Дополнительные сведения о разных вариантах и дополнительных параметрах см. в мастере импорта текста.

Если при сохранение в CSV-окне вы хотите использовать в качестве по умолчанию полу двоеточие, но для этого нужно ограничиться Excel, измените десятичной запятой. В этом случае Excel будет использовать для этого двоеточие. Очевидно, что это также изменит способ отображения десятичных чисел, поэтому также рассмотрите возможность изменения разграничения чисел в тысячах, чтобы сузить путаницу.

  1. Очистка параметров Excel> Дополнительные>параметры редактирования> Использование системных междугов.

  2. Для десятичной запятой установитедля десятичной запятой (запятую).

  3. Установите для 1000-го построитель. (точка).

Когда вы сохраняете книгу в CSV-файле, по умолчанию в качестве разных списков запятой является запятая. Вы можете изменить этот знак на другой знак с помощью параметров региона Windows. 

Внимание: Изменение параметров Windows приведет к глобальным изменениям на компьютере и повлияет на все приложения. Чтобы изменить только делитель для Excel, см. изменение стандартного деления в списке для сохранения файлов в виде текста (CSV- или CSV-файла) в Excel.

  1. В Microsoft Windows 10 щелкните правой кнопкой мыши кнопку Начните и выберите параметры.

  2. Нажмите кнопку & языки выберите регион в левой области.

  3. На главной панели в группе Региональные параметрыщелкните Дополнительные параметры даты,времени и региона.

  4. В областивыберите изменить форматы даты, времени или числа.

  5. В диалоговом окке Регион на вкладке Формат нажмите кнопку Дополнительные параметры.

  6. В диалоговом окне Настройка формата на вкладке Числа введите символ, который будет использовать в качестве нового в поле «Сепаратор списков».

  7. Дважды нажмите кнопку ОК.

  1. Нажмите кнопку Пуск и выберите пункт Панель управления.

  2. В разделе Часы, язык и регион щелкните элемент Изменение форматов даты, времени и чисел.

  3. В диалоговом окке Регион на вкладке Формат нажмите кнопку Дополнительные параметры.

  4. В диалоговом окне Настройка формата на вкладке Числа введите символ, который будет использовать в качестве нового в поле «Список».

  5. Дважды нажмите кнопку ОК.

Примечание:  После изменения разделителя элементов списка все программы на компьютере будут использовать новый символ. Вы можете вернуть стандартный символ, выполнив эти же действия.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

См. также

Импорт данных из внешних источников (Power Query)

Нужна дополнительная помощь?

Экспорт данных из Excel 2007

Как файл Excel преобразовать csv-файл?

Для экспорта таблицы Excel в csv-файл нажмите кнопку Microsoft Office (в левом верхнем углу) и выберите команду Сохранить как. В поле Тип файла укажите нужный вам тип файла csv.

Excel проведит конвертацию (экспорт) только текущего листа.

Как экспортировать таблицу из Excel в Access с сохранением связей между ними?

Экспорт из Excel’a в Access осуществляется путем импорта в Access. Для этого необходимо открыть базу данных Access и на вкладке Внешние данные группы Ипорт нажать на кнопку Excel.

В диалоговом окне Внешние данные — Электронная таблица Excel нажмите на кнопку Обзор… и укажите путь к нужному вам файлу.

Отметьте пункт Создать связанную таблицу для связи с источником данных. Благодаря этому пункту обе таблицы будут связаны, так что изменения в исходной таблице будут автоматически отображаться в Access. Внесение изменений в таблицу Access не будут влиять на данные исходной таблице.

Нажмите ОК. И у вас откроется второе диалоговое окно — Связь с электронной таблицей.

Здесь вы можете выбрать лист, который содержит необходимую таблицу или имя диапазона, если всей таблице оно присвоено. Нажимаем кнопку Далее.

Здесь необходимо указать, содержит ли первая строчка названия столбцов.

На последнем шаге вам предложат указать Имя связанной таблицы. Нажимаем Готово.

После этого Access предупредит о завершении связывания таблиц — экспорт из Excel’a/импорт в Access завершен.

В начало страницы

В начало страницы

Экспорт данных из одной книги excel в другую

Коллеги, возникла довольно трудная для меня задача. Итак, что требуется.

В CRM есть сформированная таблица, выгружается она экспортом в Excel файл (назовем его export.xlsx).
Соответственно нужно, что бы другой excel файл (назовем его result.xlsx) каким либо образом (через формулу, макрос или что то еще) подтягивал к себе все данные и изменения которые есть в export.xlsx. Причем мало сделать простое копирование данных из одного excel файла в другой.

Тут самое интересное. Чтоб понять что мне нужно, прикрепляю скриншоты во вложении. Итак, на первом скриншоте выгруженный из crm файл, на втором скрине — файл result.xlsx который должен предстать примерно в таком виде.

В файле result.xlsx вместо заголовков Мероприятие1,Мероприятие2,Мероприятие3 будут названия дисциплин из файла export.xlsx (Высота 3 группа, Строительный контроль и так далее) , вместо Организация1,Организация2,Организация3 соответственно названия самих организаций.

В этих данных в одном столбце чередуются Названия мероприятий и участники этих мероприятий.
Например Мероприятие «сосуды», у него в строке также видны тип, статус, начало и тд.
Ниже идут названия организаций, которые учавствуют в этом мероприятии. У организаций указано только Количество. И так они чередуются:
Мероприятие1
Организация1
Организация2
Организация3
Мероприятие2
Организация1
Организация2

У строчек с названием мероприятий заполнено несколько ячеек в столбцах (статус,тип и тд)
У строчек с названием организаций только 2 ячейки (название и количество)

Нужно на основании этого файла сводить данные в одну таблицу чтобы они преобразовывались по форме, которая представлена в файле result.xlsx

Нужно чтобы программа брала первый столбец, и проверяла по каждой строчке. Если в строчке заполнен 3 столбец значит это мероприятие.
Если в строчке не заполнен 3 столбец значит это организация, которая относится к мероприятию. И так по порядку, с группировкой по мероприятию.

Короче как то так. Пробовал что то шаманить с формулами, но видимо такое только макросами получится сделать.

Экспорт данных в Excel

С помощью мастера экспорта можно экспортировать данные из базы данных Access в файл формата, распознаваемого приложением Excel. В этой статье описаны процедуры подготовки и экспорта данных в Excel, а также приведены рекомендации по поиску и устранению типичных неполадок, которые могут при этом возникнуть.

В этой статье

Экспорт данных в Excel: основы

При экспорте данных в Excel приложение Access создает копию выбранных данных, а затем сохраняет их в файле, который можно открыть в Excel. Если данные требуется копировать из Access в Excel достаточно часто, можно сохранить параметры операции экспорта для повторного использования и даже запланировать ее автоматический запуск через определенные интервалы времени.

Стандартные сценарии экспорта данных в Excel

В отделе или рабочей группе для работы с данными используется как Access, так и Excel. Данные хранятся в базах данных Access, но для анализа и распространения его результатов используется Excel. Группа выполняет экспорт данных в Excel по мере необходимости, но этот процесс требуется сделать более эффективным.

Вы используете Access, но ваш руководитель предпочитает работать с данными в Excel. Вам приходится регулярно копировать данные в Excel, но вам хотелось бы автоматизировать этот процесс ради экономии времени.

Об экспорте данных в Excel

В приложении Access нет команды «Сохранить как” с возможностью сохранения данных в формате Excel. Чтобы скопировать данные в Excel, необходимо воспользоваться функций экспорта, описанной в этой статье, либо скопировать данные Access в буфер обмена, а затем вставить их в таблицу Excel.

Можно экспортировать таблицу, запрос, форму или отчет, а также отдельные записи в представлении.

В приложении Microsoft Excel есть команда импорта данных из базы данных Access. Ее можно использовать вместо команды экспорта Access, однако с помощью команды импорта в Excel можно импортировать только таблицы и запросы. Дополнительные сведения см. в разделе справки Excel Подключение к внешним данных и их импорт.

Экспортировать макросы и модули нельзя. При экспорте формы, отчета или таблицы с подчиненными формами, отчетами или таблицами экспортируется только главная форма, отчет или таблица. Все подчиненные формы, отчеты и таблицы следует экспортировать в Excel отдельно.

В ходе операции экспорта можно экспортировать лишь один объект базы данных. Однако после нескольких операций экспорта можно выполнить в Excel слияние нескольких листов.

Подготовка к экспорту

Прежде чем выполнять операцию экспорта, следует проверить данные, которые будут экспортироваться, на предмет сообщений об ошибках и ошибочных значений. Ошибки рекомендуется устранить до экспорта данных в Excel. В противном случае в ходе экспорта могут возникнуть неполадки, а в ячейки листа Excel могут быть вставлены пустые значения. Дополнительные сведения о проблемах, которые могут возникнуть при экспорте данных в Excel, см. в разделе Решение проблем, связанных с отсутствующими и неверными значениями.

Если исходным объектом является таблица или запрос, определите, как требуется экспортировать данные: с сохранением форматирования или без него. Выбранный способ экспорта влияет на два аспекта целевого файла: объем экспортируемых данных и формат их отображения. В приведенной ниже таблице представлены результаты экспорта форматированных и неформатированных данных.

Импорт данных в Excel из Интернета

В Excel есть множество встроенных инструментов для импорта данных из самых разных внешних источников. Есть среди них, разумеется, и инструмент для выгрузки информации из Интернета.

Все инструменты для импорта данных расположены на ленте на вкладке «Данные».

В новых версиях Excel по умолчанию встроена надстройка Power Query, которая и занимается импортом всех данных из внешних источников (пример показывали тут ). В более ранних версиях использовался специальный мастер импорта (пример был тут ). Если Вы привыкли именно к нему, то включить его в новой версии Excel можно пройдя по пути «Файл»-«Параметры»-«Данные» и поставив галочку на пункте «Из интернета (прежних версий)»

Как Вы уже догадались, для импорта данных из мировой паутины нужно найти команду «Из интернета», после чего перед вами откроется окно старого мастера импорта или новое окно Power Query. Разберем оба способа.

Старый мастер импорта данных из интернета

Если у Вас Excel 2013 или более старый, то этот мастер откроется по умолчанию при выборе команды «Из интернета» на вкладке «Данные». Если у Вас Excel 2016, то после того, как Вы включили старый мастер в настройках, как показано выше, он будет доступен по следующему пути: «Данные»-«Получить данные»-«Устаревшие мастеры»-«Из интернета (прежних версий)».

После запуска откроется окно «Создание веб-запроса». Оно похоже на стандартное окно браузера. В адресную строку вверху нужно ввести URL страницы, с которой необходимо выгрузить данные. После того, как страница будет загружена, все данные, которые Excel может импортировать, будут помечены небольшой желтой стрелкой. Кликните по ней и нажмите кнопку «Импорт» в правом нижнем углу. Если на странице нет желтых стрелок или они расположены не там, где нужно, то данным способом выгрузить данные в Excel не получится.

До нажатия кнопки импорт, можете задать некоторые настройки, кликнув на кнопке «Параметры» в правом верхнем углу. Наиболее полезной здесь является настройка «Отключить распознавание дат». Она позволяет избежать частой ошибки, вызванной особенностями региональных настроек системы, когда число в формате «2.15» выгружается в Excel как «фев.15».

После нажатия кнопки «Импорт» программа спросит у Вас, куда именно нужно выгрузить данные. После указания листа и диапазона, таблица из интернета будет выгружена в файл Excel. При этом, будет создан именованный диапазон, содержащий выгруженные ячейки.

После выгрузки с данными можно работать так же, как и с обычной информацией на листе (применять формулы, изменять, удалять, строить графики, сводные таблицы и т.д.).

Если поставить курсор в любую ячейку выгруженной таблицы и кликнуть правой кнопкой мыши, то в контекстном меню будет доступна команда «Обновить», по нажатию которой произойдет обновление источника данных (повторная выгрузка информации из интернета на лист). Там же (в контекстном меню) есть команда «Свойства диапазона данных. «. Вызвав ее можно задать, например, настройки обновления или изменить имя диапазона.

На данный момент, этот способ импорта данных несколько устарел. Всё тяжелее найти сайты и страницы с «желтыми стрелочками». Поэтому рекомендуем обновить Excel и прибегнуть к использованию второго способа импорта данных.

2. Импорт данных с помощью Power Query

После нажатия кнопки «Из интернета» в Excel 2016 Вы увидите не окно «Создание веб-запроса», а маленькое окошко, в котором нужно будет указать адрес страницы.

После нажатия кнопки «ОК» нужно подождать, пока Power Query подключится к источнику. Когда это произойдет, Вы увидите окно «Навигатор». В левой части будет представлен список всех таблиц, которые программа смогла распознать на странице сайта. После клика на любой из них в правой части окна появится предпросмотр данных (будут отображены те, которые Power Query выгрузит на лист при выборе данной таблицы). Если в правой части переключить вкладку вверху с «Представление таблицы» на «Веб-представление», то можно увидеть, как выглядит выбранная Вами таблица на странице сайта (и понять, это ли вы хотите выгрузить).

Если результат предпросмотра Вас устраивает, жмите кнопку «Загрузить». Если нет, то можно нажать кнопку «Правка». Тогда Вы попадете в окно редактора Power Query. Здесь можно настроить обработку данных после получения их из Интернета и перед выгрузкой на лист. Например, удалить лишние столбцы, изменить заголовки или поменять регистр текста.

После того, как данные примут нужный вид, нажмите кнопку «Закрыть и загрузить» на вкладке «Главная» в редакторе запросов.

Данные будут выгружены на новый лист. Обратите внимание, что импортированная таблица будет автоматически преобразована в «умную таблицу», а в списке запросов («Данные» — «Запросы и подключения») появится новый запрос.

Обновить его можно кликнув правой кнопкой мыши и выбрав команду «Обновить», либо нажав на иконку в правом верхнем углу рядом с названием запроса. Там же (в контекстном меню по правой кнопке мыши) есть команда «Свойства», с помощью которой можно, например, настроить автообновление запроса.

В отличие от старого мастера импорта, Power Query имеет ряд преимуществ:

1) Может работать с гораздо большим числом сайтов и страниц;

2) Может осуществлять промежуточную обработку данных перед тем, как они будут выгружены на лист;

3) Выгружает данные из Интернета гораздо быстрее;

4) Автоматически создает «Умную таблицу».

Учитывая всё вышесказанное, настоятельно рекомендуем Вам пользоваться новыми версиями Excel в целом и Power Query в частности (в Excel 2016 он встроен по умолчанию, в Excel 2010 и 2013 может быть установлен как бесплатная надстройка).

Ваши вопросы по статье можете задавать через нашего бота обратной связи в Telegram: @ExEvFeedbackBot

Импорт из Excel

Пусть исходные данные находятся в таблице Excel:

Рис. 1. Файл данных Excel

Импортировать их в STATISTICA очень легко.

В системе STATISTICA нажмите Открыть в меню Файл. Программа предложит на выбор 3 варианта: Импортировать все листы в Рабочую книгу, Импортировать выбранный лист в Таблицу данных или Открыть как Рабочую книгу Excel.

Рис. 2. Открытие файла

Если была нажата вторая кнопка, то далее необходимо выбрать номер листа в таблице Excel, который содержит нужную информацию. Сделать это очень просто.

Рис. 3. Окно Выберите лист

Например, выбреем Лист 1 и нажмём OK.

Далее вам необходимо:

указать диапазон значений во внешнем файле данных, который будет импортирован;

решить, нужно ли импортировать имена наблюдений и переменных;

сохранить (или нет) формат ячеек из исходной таблицы.

Рис. 4. Окно Открыть файл Excel

Выберите требуемые для импорта значения таблицы и нажмите кнопку OK.

Рис. 5. Таблица данных в формате STATISTICA

Теперь Ваши данные импортированы в программу STATISTICA.

Вы также можете работать в Excel «внутри» STATISTICA. Для этого в окне Открытие файла, изображенного на рисунке 2, нажмите Открыть как Рабочую книгу Excel.

Рис. 6. Рабочая книга Excel внутри STATISTICA

Теперь Вы можете совмещать привычную среду Excel и мощные возможности STATISTICA.

Экспорт данных в Excel

​Смотрите также​ таблицы Excel нажимаем​Результат:​UTF-8​CSV​ запятой соответственно в​Сохранить​Откройте созданный файл в​ Таким образом все​ CSV и нажмите​ CSV, а затем​Значение «#» в столбце​ запятой (;).​Открыть целевой файл после​

В этой статье

​ и требуется экспортировать​Таблица, запрос, отчет или​

​ команды импорта в​

​С помощью мастера экспорта​

​ на кнопку функции​Чтобы экспортировать книгу Excel​

​и вписываем запятую​– файл будет​ Блокноте или в​

Экспорт данных в Excel: основы

​(Save).​ любом стандартном текстовом​ символы, не входящие​Сохранить​ импортируйте файл​Значение​Рисунки, объекты и вложения​ завершения операции экспорта​ только часть данных,​ форма​ Excel можно импортировать​ можно экспортировать данные​ «Специальная вставка». В​ в текстовый файл,​ (,) в соответствующих​ сохранён на компьютере.​ любом другом текстовом​

Стандартные сценарии экспорта данных в Excel

  • ​Запустите Проводник Windows и​ редакторе, например, в​ в ASCII, останутся​(Save).После нажатия​.csv​#​Графические элементы (например, эмблемы,​.​ откройте объект в​Экспортируются только поля и​ только таблицы и​ из базы данных​ появившемся окне ставим​ сделайте следующее:​ полях. Параметр​

  • ​В завершение откройте созданный​ редакторе на свой​ измените расширение файла​ Блокноте.​ в целости и​Сохранить​в другое приложение.​может содержаться в​ содержимое полей объектов​Если исходный объект был​

Об экспорте данных в Excel

  • ​ режиме таблицы и​ записи, отображаемые в​ запросы. Дополнительные сведения​ Access в файл​ галочку у функции​Откройте документ Excel.​Разделитель текста​ CSV-файл в любом​ выбор (ранее в​ с​Замечание:​ сохранности.​(Save) появятся два​ Ниже дано пошаговое​

  • ​ столбце, который соответствует​ OLE и вложения,​ открыт и одна​ выберите необходимые записи.​

  • ​ текущем представлении или​ см. в разделе​ формата, распознаваемого приложением​ «Связать». В окне​На вкладке​(Text delimiter) обычно​ текстовом редакторе, чтобы​ этой статье есть​.txt​Не все простые​Прежде чем двинуться дальше,​ диалоговых окна. Не​ руководство, как экспортировать​ логическому полю формы.​ которые содержатся в​

  • ​ или несколько записей​Открытие формы в режиме​ объекте. Фильтрованные записи,​ справки Excel Подключение​ Excel. В этой​ «Как» выбираем –​File​ оставляют без изменения​ убедиться, что все​ подробная инструкция, как​на​ текстовые редакторы полностью​

  • ​ позвольте мне кратко​ переживайте, эти сообщения​ рабочую книгу Excel​ Это может быть​ исходных данных) не​ для экспорта выделены​ таблицы​ скрытые столбцы таблицы,​

​ к внешним данных​

Подготовка к экспорту

​ статье описаны процедуры​ «Текст».​(Файл) нажмите​ – кавычки («).​ символы сохранены правильно.​ это делается).​.csv​ поддерживают символы Юникод,​ пояснить главные отличия​ не говорят об​ в формат CSV​ результатом запуска операции​ экспортируются. Их следует​ до запуска операции,​    ​ а также не​ и их импорт.​ подготовки и экспорта​Нажимаем кнопку «ОК».​Save As​ Далее нажимаем​ К сожалению, файлы​Описанные выше способы экспорта​

​.По-другому изменить расширение​ поэтому некоторые из​ между кодировками UTF-8​ ошибке, так и​ при помощи инструмента​ экспорта из области​ добавить на лист​ можно установить флажок​Чтобы открыть форму, дважды​ отображаемые в форме​Экспортировать макросы и модули​ данных в Excel,​По такому принципу​(Сохранить как).​ОК​

​ CSV, созданные таким​

​ данных из Excel​

​.txt​

​ них могут отображаться​

​ и UTF-16, чтобы​

​ должно быть.​

​ Excel – «​​ переходов или режима​ вручную после завершения​Экспортировать только выбранные записи​

​ щелкните ее.​ или отчете поля​

​ нельзя. При экспорте​ а также приведены​

​ вставляем связь в​Из выпадающего списка выберите​.​

​ способом, не всегда​ в CSV (UTF-8​на​ как прямоугольники. В​ в каждом индивидуальном​

​Первое диалоговое окно напоминает​

​Сохранить как​ формы. Чтобы устранить​

​ операции экспорта.​. Если требуется экспортировать​Щелкните форму правой кнопкой​ не экспортируются.​ формы, отчета или​ рекомендации по поиску​ другие ячейки таблицы​Text (Tab delimited)​Таким же образом для​

​ правильно отображаются в​ и UTF-16) универсальны,​

​.csv​ большинстве случаев, это​

​ случае Вы могли​ о том, что​».​

​ эту ошибку, откройте​График​ все отображаемые записи,​

  1. ​ мыши, а затем​В мастере соблюдаются параметры​ таблицы с подчиненными​ и устранению типичных​ Excel.​(Текстовые файлы (с​ быстрого и безболезненного​ Excel.​

    ​ т.е. подойдут для​можно непосредственно в​ никак не повлияет​ выбрать подходящий формат:​В файле выбранного типа​В рабочей книге Excel​ форму в режиме​

​При экспорте формы или​

​ этот флажок необходимо​

​ щелкните элемент​

​ свойства «Формат».​

​ формами, отчетами или​

​ неполадок, которые могут​Удобно то, что​

​ разделителями табуляции)) или​ преобразования из Excel​

​Для этого способа не​ работы с любыми​

​ Блокноте. Для этого​

​ на итоговый файл,​

​UTF-8​

​ может быть сохранён​ откройте вкладку​ таблицы, прежде чем​ отчета, содержащих объект​ снять.​Режим таблицы​В случае полей подстановки​ таблицами экспортируется только​ при этом возникнуть.​ при изменении данных​CSV (Comma delimited)​ в CSV можно​

​ требуется каких-либо дополнительных​

​ специальными символами и​ в диалоговом окне​

​ и можно просто​

​– это более​ только текущий лист​Файл​ экспортировать данные.​ Microsoft Graph, он​Примечание:​. Если он недоступен,​ экспортируются значения подстановки.​

​ главная форма, отчет​Экспорт данных в Excel:​ в ячейках таблицы​(CSV (разделители –​ использовать ещё одно​

​ комментариев, так как​

Выполнение экспорта

  1. ​ в любой версии​Сохранить как​ не обращать на​

  2. ​ компактная кодировка, использующая​(The selected file​(File) и нажмите​Индикаторы или значения ошибки​

    ​ не экспортируется.​

    ​  Если записи не​ выполните действия, описанные​При экспорте полей гиперссылок​ или таблица. Все​ основы​ Word, автоматически будут​ запятые)).​

    ​ приложение – LibreOffice.​ из названия уже​​ Excel от 2003​

    1. ​(Save as) в​ это внимание или​

    2. ​ для каждого символа​ type does not​Сохранить как​​Проверьте ячейки на наличие​​Данные в неверном столбце​ выделены, этот флажок​ ниже.​

      1. ​ значения экспортируются в​​ подчиненные формы, отчеты​​Подготовка к экспорту​

      2. ​ обновляться данные в​Нажмите​ Согласитесь, было бы​

      3. ​ всё ясно.​ до 2013.​ поле​​ выбрать более продвинутый​​ от 1 до​

      4. ​ support workbooks that​(Save as). Кроме​ индикаторов ошибки (треугольников​​Значения Null на целевом​​ недоступен (неактивен).​​Выберите пункт​​ виде гиперссылок.​

      5. ​ и таблицы следует​​Выполнение экспорта​​ ячейках таблицы Excel.​​Save​​ здорово, если бы​​Это решение я нашёл​​Существует множество других способов​

        ​Тип файла​​ редактор, например, Notepad++.​ 4 байт. Чаще​ contain multiple sheets).​ этого, диалоговое окно​ зеленого цвета в​ листе иногда заменяются​Нажмите кнопку​Режим конструктора​

  3. ​При экспорте полей форматированного​​ экспортировать в Excel​​Что еще важно знать​​ Не нужно обновлять​​(Сохранить).​​ Microsoft Excel предоставил​​ на одном из​

  4. ​ преобразования данных из​​(Save as type)​Так как в нашем​​ всего рекомендуется использовать​ Чтобы сохранить только​Сохранение документа​ углу ячеек) или​ данными, которые должны​ОК​

  5. ​.​​ текста текст экспортируется​​ отдельно.​ об экспорте​

  6. ​ вручную.​Результат: CSV файл (разделенный​ возможность так же​ форумов, посвящённых Excel,​​ формата Excel в​ выберите вариант​​ текстовом Юникод файле​ этот формат, когда​ текущий лист, достаточно​

    ​(Save as) можно​​ значений ошибки (строк,​ находиться в следующем​.​Нажмите клавишу F4, чтобы​ без форматирования.​

  7. ​В ходе операции экспорта​Решение проблем, связанных с​Но, если таблица​ запятыми) и TXT​​ настраивать параметры при​ уже не помню,​​ CSV. В отличие​

    ​Все файлы​ в качестве разделителей​ символы ASCII преобладают​ нажать​ открыть, нажав клавишу​ которые начинаются со​​ столбце.​​Если в ходе экспорта​ отобразить панель задач​Выберите целевую книгу и​ можно экспортировать лишь​

    ​ отсутствующими и неверными​​ большая, то таблицу​ файл (разделённый знаками​ создании файлов CSV.​

  8. ​ на каком именно.​​ от показанных выше​​(All files), а​

    ​ используется символ табуляции,​ в файле, т.к.​ОК​F12​ знака​Отсутствующие значения даты​ возникает ошибка, в​ «Страница свойств».​ ее формат. Имейте​ один объект базы​ значениями​ Word можно скопировать​ табуляции).​В этой статье я​ Честно говоря, я​ решений, эти способы​ к имени файла​ а мы хотим​

​ большинство таких символов​

Что еще важно знать об экспорте

  • ​.​.​#​Значения дат, предшествующих 1​ Access отображается сообщение​В раскрывающемся списке в​ в виду, что​ данных. Однако после​При экспорте данных в​

  • ​ в Excel сразу​Урок подготовлен для Вас​ рассказал об известных​ никогда не использовал​ не будут давать​

  • ​ в соответствующем поле​ преобразовать его в​ требует 1 байт​Если нужно сохранить все​В поле​

  • ​, а не с​ января 1900 г.,​ с описанием ее​ верхней части этой​ отчеты можно экспортировать​ нескольких операций экспорта​ Excel приложение Access​

​ всю и сразу​

Решение проблем, связанных с отсутствующими и неверными значениями

​ командой сайта office-guru.ru​ мне способах преобразования​ этот способ, но,​

​ в результате чистый​​ добавьте «.csv», как​ CSV (разделители –​ памяти. Ещё одно​ листы книги, то​Тип файла​ нужных данных).​ не экспортируются. Соответствующие​ причины. В противном​

​ панели выберите пункт​

​ только в более​

​ можно выполнить в​

​ создает копию выбранных​ установить связи со​Источник: http://www.excel-easy.com/examples/import-export-text-files.html​ файлов Excel в​

​ по отзывам множества​

​ UTF-8 файл (это​ показано на рисунке​ запятые), то необходимо​ преимущество в том,​

​ нажмите​

​(Save as type)​К началу страницы​ ячейки на листе​ случае приложение Access​Форма​ старом формате XLS​ Excel слияние нескольких​ данных, а затем​ всеми ячейками таблиц.​

​Перевел: Антон Андронов​

​ CSV. Если Вам​ пользователей, некоторые специальные​ не касается OpenOffice,​ ниже.​

​ заменить символы табуляции​

​ что кодировка файла​Отмена​ выберите​CSV​ содержат значения Null.​

​ экспортирует данные и​

​.​ (но не в​ листов.​ сохраняет их в​Выделяем всю таблицу​

​Автор: Антон Андронов​

​ знакомы более эффективные​ символы теряются, если​ который умеет экспортировать​Откройте файл CSV в​ на запятые.​ UTF-8, содержащего только​(Cancel) и сохраните​CSV (разделители – запятые)​

​(Comma Separated Values)​Отсутствующие выражения​

​ в соответствии с​На вкладке «Формат» панели​ формате XLSX).​К началу страницы​ файле, который можно​ в Word знаком​Можно настроить​ методы экспорта из​ сохранять непосредственно из​

​ файлы Excel в​ Excel, для этого​

​Замечание:​ символы ASCII, ничем​ все листы книги​(CSV (Comma delimited)).​ – распространённый формат​​Выражения, которые используются для​ параметрами, выбранными на​​ «Страница свойств» установите​В процессе экспорта Access​Прежде чем выполнять операцию​ открыть в Excel.​ стрелочек в левом​слияние Word и Excel,​

​ Excel в CSV,​

  1. ​.xlsx​ несколько вариантов кодировки​ на вкладке​Если нет строгой​

  2. ​ не будет отличаться​ по-отдельности с соответствующими​Кроме CSV (разделители –​ для хранения табличных​​ вычислений, не экспортируются​​ этапе 7, открывает​

  3. ​ значение​​ предлагает указать имя​​ экспорта, следует проверить​​ Если данные требуется​​ верхнем углу таблицы​чтобы данные обной​​ расскажите об этом​​в​​ UTF). Но в​​Файл​​ необходимости получить файл​​ от такого же​​ именами файлов, или​​ запятые), доступны несколько​

  4. ​ данных (числовых и​​ в Excel. Экспортируются​​ либо не открывает​

​Да​

​ конечной книги. В​​ данные, которые будут​​ копировать из Access​ Word.​ таблицы автоматически переносились​ в комментариях. Благодарю​.csv​ большинстве случаев получившийся​(File) нажмите​ именно с разделителями​ ASCII-файла.​ можете выбрать для​ других вариантов формата​ текстовых) в виде​

​ только результаты вычислений.​

​ целевую книгу в​для свойства​ приведенной ниже таблице​ экспортироваться, на предмет​ в Excel достаточно​Нажимаем функцию «Копировать».​ в другую таблицу.​​ за внимание!​​, но остаются, если​ файл будет содержать​

​Открыть​

support.office.com

Как преобразовать файлы Excel в формат CSV

​ – запятыми, а​​UTF-16​ сохранения другой тип​ CSV:​ простого текста. Этот​ Формулу следует добавить​ Excel. Затем в​Режим таблицы​ представлена сводка случаев​ сообщений об ошибках​ часто, можно сохранить​Переходим в таблицу​ Например,​Урок подготовлен для Вас​ сначала​ правильный набор символов,​>​ нужен любой файл​использует от 2​ файла, поддерживающий несколько​CSV (разделители – запятые)​ формат файлов популярен​ в рабочий лист​ Access открывается диалоговое​.​ создания новой книги​ и ошибочных значений.​ параметры операции экспорта​ Excel. Нажимаем на​связать таблицу Excel с​ командой сайта office-guru.ru​.xlsx​

​ который далее можно​Текстовые файлы​ CSV, который Excel​ до 4 байт​ страниц.​(CSV (Comma delimited)).​ и живуч благодаря​ Excel вручную после​ окно, в котором​На вкладке​ или перезаписи имеющейся.​ Ошибки рекомендуется устранить​ для повторного использования​ закладке «Главная» стрелку​ таблицей Word​

  • ​Источник: https://www.ablebits.com/office-addins-blog/2014/04/24/convert-excel-csv/​сохранить как​
  • ​ безболезненно преобразовать в​(Open > Text​ сможет понять, то​
  • ​ для хранения каждого​После нажатия​ Этот формат хранит​ тому, что огромное​

Как преобразовать файл Excel в CSV

​ завершения операции экспорта.​ можно создать спецификацию​Конструктор​Целевая книга​ до экспорта данных​ и даже запланировать​ у кнопки функции​, чтобы данные из​Перевел: Антон Андронов​.xls​​ формат UTF-8 при​​ files) и проверьте​ этот шаг можно​ символа. Учтите, что​ОК​ данные Excel, как​ количество программ и​Отсутствующие подчиненные формы, отчеты​​ со сведениями об​​в группе​

  1. ​Исходный объект​ в Excel. В​​ ее автоматический запуск​​ «Вставить» и выбираем​​ таблицы Excel автоматически​​Автор: Антон Андронов​, и затем как​​ помощи любого текстового​​ в порядке ли​ пропустить, так как​​ не во всех​​в первом диалоговом​Преобразование Excel в CSV
  2. ​ текстовый файл с​​ приложений понимают CSV,​​ и таблицы​ экспорте.​​Представления​​Экспортируемые данные​Преобразование Excel в CSV​ противном случае в​ через определенные интервалы​ функцию «Вставить связь».​ попадали в таблицу​
    • ​Импорт​​.csv​ редактора.​ данные.​ Microsoft Excel отлично​ случаях файл UTF-16​ окне, появится второе,​ разделителями запятыми, и​ хотя бы как​При экспорте формы, отчета​К началу страницы​
    • ​выберите пункт​​Результат​ ходе экспорта могут​ времени.​ Всё, таблица вставлена​ Word. Это не​Экспорт​
    • ​, как мы делали​​Как оказалось, можно очень​Замечание:​ понимает файлы с​ требует больше места​ предупреждающее о том,​
    • ​ может быть использован​​ альтернативный вариант файлового​ или таблицы экспортируется​Сведения о том, как​Режим таблицы​Не существует​ возникнуть неполадки, а​В отделе или рабочей​ со связями.​ простое копирование таблицы,​Эта статья описывает, как​ в начале этой​ просто преобразовать файл​Если Ваш файл​ разделителем – табуляцией.​ в памяти, чем​ что некоторые возможности​ в другом приложении​​ формата для импорта​​ только главная форма,​ сохранить сведения об​.​Таблица, запрос, отчет или​ в ячейки листа​ группе для работы​В каждой ячейке таблицы​ а установка связи​

​ импортировать или экспортировать​​ статьи.​ Excel в CSV​ предназначен для использования​

  1. ​Если всё же нужен​ файл UTF-8. Например,​ станут недоступны, так​​ Windows и в​​ / экспорта. Более​​ отчет или таблица.​​ экспорте в виде​Примечание:​ форма​ Excel могут быть​ с данными используется​ Excel стоит путь​
  2. ​ между таблицами. Смотрите​ текстовые файлы. Текстовые​​Так или иначе, попробуйте​ при помощи Таблиц​ за пределами Excel​​ файл CSV (разделители​ японские символы занимают​ как не поддерживаются​ другой версии операционной​ того, формат CSV​ Необходимо повторить операцию​ спецификации, которую можно​​ Часть отчета экспортировать нельзя.​​Данные с форматированием или​Преобразование Excel в CSV​ вставлены пустые значения.​ как Access, так​ связи с таблицей​​ об этом статью​​ файлы могут быть​ сами такой способ​ Google. При условии,​ и формат UTF-8​ – запятые), то​ от 3 до​ форматом CSV. Так​ системы Windows.​
  3. ​ позволяет пользователю заглянуть​​ экспорта для всех​​ использовать повторно, см.​ Однако можно выбрать​ без него​ Дополнительные сведения о​ и Excel. Данные​ Word.​ «Как перенести таблицу​ разделены запятыми (.csv)​ создания файлов CSV​​ что на Вашем​​ является обязательным требованием,​Преобразование Excel в CSV

​ выполните в Блокноте​ 4 байт в​ и должно быть,​CSV (Macintosh)​ в файл и​ подчиненных форм, отчетов​ в статье Сохранение​

Экспортируем из Excel в CSV с кодировкой UTF-8 или UTF-16

​ или открыть таблицу​В ходе операции экспорта​ проблемах, которые могут​ хранятся в базах​Обновление данных в​ из Excel в​ или знаками табуляции​ из Excel, и​ компьютере уже установлен​

​ то не совершайте​ следующие действия:​​ UTF-8 и от​​ поэтому просто жмите​​. Этот формат сохраняет​​ немедленно найти проблему​ и таблиц, которые​ параметров операции импорта​ или запрос, на​ создается книга.​ возникнуть при экспорте​ данных Access, но​ таблице Excel происходит​ Word».​ (.txt).​ если получится, то​ Google Drive, выполните​ на листе никаких​Выделите символ табуляции, кликните​ 2 до 4​

​Да​ книгу Excel, как​ с данными, если​​ требуется экспортировать.​​ или экспорта в​ которых основан отчет,​Существует​ данных в Excel,​ для анализа и​ автоматически, как только​Здесь рассмотрим,​

​Чтобы импортировать текстовые файлы,​ это будет хорошая​ следующие 5 простых​ изменений и не​ по нему правой​ байт в UTF-16.​(Yes).​ файл с разделителями​

  • ​ таковая имеется, изменить​​Отсутствующие или неправильно отформатированные​ виде спецификации.​ и затем экспортировать​Таблица или запрос​ см. в разделе​ распространения его результатов​ изменились данные в​как преобразовать Word в​ следуйте нашей инструкции:​ экономия времени.​ шагов:​ сохраняйте его снова​ кнопкой и в​ Таким образом, есть​Вот так рабочий лист​ запятыми для использования​ разделитель CSV, правила​ столбцы​Дополнительные сведения о запуске​
  • ​ часть данных в​​Данные без форматирования​ Решение проблем, связанных​ используется Excel. Группа​ таблице Word.​ Excel​На вкладке​OpenOffice – это пакет​В Google Drive нажмите​ в Excel, поскольку​ контекстном меню нажмите​ смысл использовать UTF-16,​ Excel можно сохранить​ в операционной системе​ цитирования и так​Если ни один из​ спецификаций см. в​ этот объект.​Файл не перезаписывается. В​ с отсутствующими и​ выполняет экспорт данных​Если таблица Excel​, как автоматически переносить​File​ приложений с открытым​ кнопку​ это может привести​Копировать​ если данные содержат​ как файл CSV.​ Mac.​ далее. Это возможно​ столбцов на конечном​

Как преобразовать файл Excel в CSV UTF-8

​ статье Выполнение сохраненной​На вкладке​ книгу добавляется новый​ неверными значениями.​ в Excel по​

Преобразование Excel в CSV

​ была закрыта, когда​ данные из таблицы​(Файл) кликните​ исходным кодом, включает​Создать​

  1. ​ к проблемам с​​(Copy), или просто​​ азиатские символы, в​​ Быстро и просто,​​CSV (MS-DOS)​
  2. ​ потому, что CSV​ листе не отформатирован,​​ операции импорта или​​Внешние данные​ лист, которому присваивается​​Если исходным объектом является​​ мере необходимости, но​ изменили данные в​​ Word в таблицу​​Open​Преобразование Excel в CSV
  3. ​ в себя приложение​(Create) и выберите​ чтением кодировки. Если​ нажмите​

​ том числе Японские,​​ и вряд ли​. Сохраняет книгу Excel,​ – это простой​ повторите операцию экспорта,​ экспорта.​в группе​ имя объекта, из​ таблица или запрос,​ этот процесс требуется​ таблице Word, то​ Excel.​(Открыть).​ для работы с​Таблица​

  1. ​ какая-то часть данных​Ctrl+C​ Китайские и Корейские.​ тут могут возникнуть​ как файл с​ текст, и даже​ установив флажок​Дополнительные сведения о запуске​Экспорт​ которого экспортируются данные.​

​ определите, как требуется​​ сделать более эффективным.​ данные в Excel​Итак -​Из выпадающего списка выберите​ таблицами, которое отлично​(Spreadsheet).​ не отображается в​, как показано на​ Существенный недостаток этой​ какие-либо трудности.​ разделителями запятыми для​ не очень опытный​

  1. ​Экспортировать данные с макетом​ спецификаций в определенное​нажмите кнопку​ Если лист с​ экспортировать данные: с​

    ​ статье Планирование импорта​.​

    Преобразование Excel в CSV

  2. ​ существует, Access предлагает​​ без него. Выбранный​​ работать с данными​​Как из Excel​​Excel​Чтобы импортировать файл …​ формата Excel в​(File) нажмите​​ Блокноте и в​​Ctrl+H​​ полностью совместима с​​ или иностранные символы​​Текст Юникод​​ специальной подготовки.​Преобразование Excel в CSV
  3. ​ же только некоторые​ или экспорта.​В диалоговом окне​​ либо заменить содержимое​​ способ экспорта влияет​​ в Excel. Вам​​ перенести в Word​​. У нас такая​​CSV​​ CSV. На самом​​Импорт​ нём внесите исправления​, чтобы открылось диалоговое​​ ASCII-файлами и требуются​​ (тильда, ударение и​(Unicode Text (*txt)).​​В этой статье мы​​ столбцы имеют форматирование,​Сведения о том, как​​Экспорт — Электронная таблица​​ соответствующего листа, либо​ на два аспекта​ приходится регулярно копировать​ данные, смотрите в​ таблица в Word.​, выберите документ с​Преобразование Excel в CSV
  4. ​ деле, это приложение​(Import).​ в данные. Не​​ окно​​ специальные программы для​​ подобные) или иероглифы,​​ Этот стандарт поддерживается​​ изучим быстрые и​​ отличное от исходного,​ изменить имя спецификации,​ Excel​ указать другое имя​

​ целевого файла: объем​​ данные в Excel,​ статье «Слияние Word​Сделаем в Excel заготовку​ расширением​ предоставляет доступ к​Кликните​ забудьте снова сохранить​Заменить​ отображения таких файлов.​ то преобразование листа​ почти во всех​ эффективные способы экспорта​ выполните нужные действия​ удалить ее или​просмотрите предлагаемые имена​ нового листа.​ экспортируемых данных и​ но вам хотелось​ и Excel».​ таблицы. Можно без​.csv​ большему числу параметров​Загрузка​

Как преобразовать файл Excel в CSV UTF-16

​ файл в формате​(Replace) и вставьте​ Помните об этом,​ Excel в CSV​ существующих операционных системах,​ данных из Excel​ в Excel вручную.​ обновить имена исходных​​ файлов рабочей книги​​Существует​

​ формат их отображения.​ бы автоматизировать этот​​IvanOK​​ заготовки, используя сетку​и нажмите кнопку​ при преобразовании таблиц​(Upload) и выберите​ UTF-8.​​ скопированный символ табуляции​​ если планируете импортировать​

​ описанным выше способом​ в том числе​ в CSV и​Форматирование столбца в Excel​ файлов, см. в​ Excel (Access использует​Таблица, запрос, отчет или​ В приведенной ниже​ процесс ради экономии​: Дайте, пожалуйста, ссылку​ Excel.​Open​ в файлы CSV​ файл Excel для​Экспортировать в файл CSV​

Другие способы преобразования файлов Excel в CSV

​ в поле​ получившиеся файлы из​ не сработает.​ в Windows, Macintosh,​ узнаем, как преобразовать​Откройте целевую книгу Excel​ статье Задачи управления​ имена исходных объектов).​ форма​ таблице представлены результаты​

​ времени.​ или название книги​Выделяем первую ячейку​(Открыть). Это всё.​ (кодировка, разделители и​ загрузки со своего​ UTF-16 намного быстрее​Что​ Excel куда-то ещё.​Дело в том, что​ Linux и Solaris​ файл Excel в​ и перейдите на​ данными.​ При необходимости имя​Данные с форматированием​ экспорта форматированных и​В приложении Access нет​ и главы, где​ в таблице Word.​TXT​ так далее), чем​

Преобразуем файл Excel в CSV при помощи Таблиц Google

​ компьютера.​ и проще, чем​(Find what). При​Предположим, у нас есть​ команда​ Unix. Он поддерживает​ CSV, сохранив без​ лист с экспортированными​К началу страницы​ файла можно изменить.​

  1. ​Файл перезаписывается экспортируемыми данными.​ неформатированных данных.​​ команды «Сохранить как”​​ есть описание этого​​ Нажимаем не выделенную​​, выберите документ с​
  2. ​ Excel и Google​​В диалоговом окне​​ в UTF-8. Дело​​ этом курсор сместится​​ лист Excel с​Преобразование Excel в CSV
  3. ​Сохранить как​​ символы почти всех​​ искажений все специальные​ данными.​В приведенной ниже таблице​В поле​
  4. ​ Все имеющиеся листы​​Экспорт​​ с возможностью сохранения​​ подробно. Что-то вроде​​ ячейку правой кнопкой​​ расширением​ Sheets вместе взятые.​​Имп​​ в том, что​Преобразование Excel в CSV

​ вправо – это​​ иностранными символами, в​>​ современных и даже​ и иностранные символы.​Щелкните нужный столбец или​ описаны различные способы​Формат файла​ удаляются, и создается​

  1. ​Исходный объект​​ данных в формате​​ учебника.​​ мыши и выбираем​​.txt​Просто открываем файл Excel​​орт файла​​ Excel автоматически применяет​ значит, что символ​Преобразование Excel в CSV

​ нашем примере –​CSV​ некоторых древних языков.​ Описанные в статье​ выделенный диапазон ячеек​ устранения типичных ошибок.​выберите нужный формат​ новый лист с​Поля и записи​ Excel. Чтобы скопировать​

Сохраняем файл .xlsx как .xls и затем преобразуем в файл CSV

​вас интересует обыкновенный​ из контекстного меню​и кликните по​ в OpenOffice Calc,​(Import file) выберите​

​ формат UTF-16 при​ табуляции вставлен. В​ это японские имена.​(Save as >​ Поэтому, если книга​ приёмы работают во​ правой кнопкой мыши​Совет:​ файла.​ именем экспортируемого объекта.​Форматирование​ данные в Excel,​​ перенос данных с​​ функцию «Копировать».​​Open​​ нажимаем​Заменить таблицу​​ сохранении файла как​​ поле​​Чтобы экспортировать этот лист​​ CSV) исказит все​​ Excel содержит данные​​ всех версиях Excel​ и выберите пункт​  Если отсутствует всего​

​Если при экспорте таблицы​ Данные листа Excel​Без форматирования​ необходимо воспользоваться функций​ одного листа в​Переходим в таблицу​(Открыть). Excel запустит​

Сохраняем файл Excel как CSV при помощи OpenOffice

​Файл​(Replace spreadsheet) и​Текст Юникод​Чем​ Excel в файл​ символы, кроме ASCII​ на иностранных языках,​ 2013, 2010 и​Формат ячеек​ несколько значений, введите​ или запроса требуется​ наследуют параметры форматирования​Таблица или запрос​ экспорта, описанной в​ ексель в другой?​ Excel. Нажимаем на​Text Import Wizard​>​ нажмите​

​(Unicode Text).​(Replace with) введите​ CSV, сохранив при​​ (American Standard Code​​ то рекомендую сначала​​ 2007.​​.​ их в книгу​ сохранить форматирование данных,​​ исходного объекта.​​Примечание:​

​ этой статье, либо​IvanOK​​ первую ячейку таблицы.​​(Мастер текстов (импорт)).​​Сохранить как​​Импорт​Для этого сохраняем файл​ запятую и нажмите​ этом все иероглифы,​ for Information Interchange).​ сохранить её в​​Преобразуем данные из формата​​На вкладке​ Excel самостоятельно, в​ установите флажок​​Данные всегда добавляются в​​  Формы и отчеты​ скопировать данные Access​, в «Excel 2010″​ На закладке «Главная»​​Выберите​​(File > Save​

Преобразование Excel в CSV

​(Import).​ при помощи инструмента​Заменить все​ сделаем следующее:​ И если на​ формате​ Excel в CSV​Число​ противном случае исправьте​Экспортировать данные с макетом​ новый лист. Невозможно​ невозможно экспортировать без​

​ в буфер обмена,​ есть: вкладка​ нажимаем на стрелку​Delimited​ as) и выбираем​Совет:​Сохранить как​(Replace all).​В Excel откройте вкладку​ листе Excel есть​Текст Юникод​

​Экспортируем из Excel в​в группе​
​ исходный объект в​
​ и форматированием​

​ добавить данные в​

office-guru.ru

Импорт и экспорт текстовых файлов в Excel

  • ​ форматирования.​
  • ​ а затем вставить​

​Данные​ (треугольник) у кнопки​(С разделителями) и​ тип файла​Если файл Excel​(Save as) в​В Блокноте результат будет​

Импорт

​Файл​ парные кавычки или​

  1. ​(Unicode Text (*txt)),​​ формат CSV UTF-8​​Числовые форматы​​ базе данных Access​​. Дополнительные сведения см.​
  2. ​ имеющийся лист или​​Экспортируются все поля и​​ их в таблицу​Импорт и экспорт текста в Excel
  3. ​- группа​
    • ​ функции «Вставить» и​​ нажмите​Текст CSV​​ относительно небольшой, то​​ Excel и затем​​ приблизительно вот такой:​​(File) и нажмите​
    • ​ длинные тире (перенесённые​​ а затем преобразовать​ или UTF-16​​выберите нужный формат,​​ и повторите экспорт.​​ в разделе Подготовка​​ именованный диапазон.​​ записи базового объекта.​​ Excel.​
  4. ​Получение внешних данных​​ выбираем из контекстного​​Next​(Text CSV).​​ для экономии времени​​ в Проводнике Windows​Импорт и экспорт текста в Excel
  5. ​Кликните​Сохранить как​​ в Excel, например,​​ в CSV, как​Другие способы преобразования из​​ например​​Источник проблемы​Импорт и экспорт текста в Excel
  6. ​ к операции экспорта.​​К началу страницы​​Параметры свойства «Формат» пропускаются​Импорт и экспорт текста в Excel

​Можно экспортировать таблицу, запрос,​

Импорт и экспорт текста в Excel

Экспорт

​-​ меню функцию «Вставить​(Далее).​

  1. ​На следующем шаге предлагается​
  2. ​ можно перенести из​​ изменяем расширение созданного​​Файл​​(Save as).​​ из документа Word​
  3. ​ описано далее в​​ формата Excel в​​Текстовый​Описание и решение​​Примечание:​​Если целевая книга Excel​ в ходе операции.​Импорт и экспорт текста в Excel
  4. ​ форму или отчет,​​Из других источников​​ связь».​

​Уберите все галочки кроме​ выбрать значения параметров​ него данные в​ файла на​

Импорт и экспорт текста в Excel Импорт и экспорт текста в Excel

​>​Введите имя файла, в​
​ при копировании /​
​ разделе Экспортируем из​

​ CSV (сохраняя специальные​

office-guru.ru

Экспорт таблицы из Word в Excel.

​,​​Вычисляемые поля​​  При экспорте формы​ открыта, закройте ее​Для полей подстановки экспортируются​ а также отдельные​​-​Получилось так.​​ той, что напротив​Кодировка​ таблицу Google при​.csv​Сохранить как​ поле​ вставке текста) –​ Excel в формат​ символы)​Числовой​Экспортируются результаты вычисляемых полей;​
​ или отчета этот​​ перед выполнением операции.​ только значения кодов​​ записи в представлении.​Из мастера подключения данных​В ячейке стоит слово,​Tab​
​(Character sets) и​​ помощи копирования /​ ​. Готово!​ ​(File > Save​​Тип файла​ такие символы также​
​ CSV UTF-8 или​Если требуется экспортировать файл​,​ выражения, на основе​
​ флажок установлен по​На панели навигации исходной​ подстановки.​В приложении Microsoft Excel​.​ как в таблице​(Знак табуляции) и​
​Разделитель поля​ вставки.​Если нужен файл CSV​ as), введите имя​(Save as type)​ будут искромсаны.​ UTF-16.​ Excel в какое-либо​Дата​ которых производится вычисление,​
​ умолчанию и недоступен​
​ базы данных выберите​Содержимое полей гиперссылок экспортируется​ есть команда импорта​И вот дальше​ Word. В адресной​
​ кликните​(Field delimiter). Разумеется,​В меню​ с запятой или​ для файла и​ выберите​Простое решение – сохранить​Замечание:​ другое приложение, например,​или​ не экспортируются.​​ для изменения.​
​ объект, который требуется​ в виде столбца​ данных из базы​ хотелось бы что-то​
​ строке написан путь​Next​ если мы хотим​Файл​ точкой с запятой​ в выпадающем списке​Текст Юникод​ лист Excel как​
​Все упомянутые форматы​ в адресную книгу​Время​Многозначные поля​Чтобы просмотреть конечный файл​ экспортировать.​ текста, в котором​
​ данных Access. Ее​ вроде учебника почитать,​ связи.​(Далее).​ создать файл CSV​​(File) нажмите​
​ в качестве разделителя,​Кодировка​(Unicode Text (*.txt))​ текстовый файл​ сохраняют только активный​ Outlook или в​.​Многозначные поля экспортируются в​
Импорт таблицы из Excel в Word.​ Excel после завершения​Экспорт только части данных​ ссылки отображаются в​ можно использовать вместо​
​ но именно по​Функцию «Вставить связь»​Нажмите​ UTF-8 с запятыми​Скачать как​
​ замените все символы​(Encoding) выберите​ и нажмите​Unicode(.txt)​ лист Excel.​ базу данных Access,​Нажмите кнопку​
​ виде списка значений,​ операции экспорта, установите​Если объектом является таблица,​ формате отображаемый_текст#адрес#.​ команды экспорта Access,​

excel-office.ru

Импорт внешних данных в Excel из Excel

​ «Excel», а не​​ можно найти, еще,​Finish​ в качестве разделителей,​(Download as), выберите​ табуляции на запятые​UTF-8​

​Сохранить​, и затем преобразовать​Выберите папку для сохранения​ предварительно преобразуйте лист​​ОК​​ разделенных точками с​ флажок​​ запрос или форма​​С форматированием​​ однако с помощью​​ вообще.​​ в контекстном меню​​(Готово).​​ то выбираем​​ тип файла​
​ или точки с​. Затем нажмите кнопку​(Save).​ его в CSV.​ файла в формате​ Excel в файл​

CyberForum.ru

​.​

На чтение 9 мин Просмотров 27.1к. Опубликовано 09.11.2017

MS Excel давно стал стандартом для работы с электронными таблицами. В статье рассматриваются способы программной выгрузки и загрузки из 1С в файлы Excel.

Существует несколько способов программной работы с файлами Excel из 1С. Каждый из них имеет свои преимущества и недостатки.

Содержание

  1. Обмен через табличный документ
  2. Обмен через OLE
  3. Использование COMSafeArray
  4. Обмен через ADO
  5. Выгрузка без программирования

Обмен через табличный документ

Данный способ простой. Его суть заключается в том, что объект ТабличныйДокумент имеет методы:

  • Записать(<ИмяФайла>, <ТипФайлаТаблицы>) для выгрузки данных в файл;
  • Прочитать(<ИмяФайла>, <СпособЧтенияЗначений>) для загрузки данных из файла.

Внимание!

Метод Записать() доступен как на клиенте, так и на сервере. Метод Прочитать() доступен только на стороне сервера. Необходимо помнить об этом
при планировании клиент-серверного взаимодействия.


Рассмотрим пример сохранения табличного документа в файл. Необходимо любым способом создать и заполнить объект ТабличныйДокумент, а выгрузка в файл осуществляется всего лишь одной строкой:

ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLSX);

Здесь ТабДок — сформированный табличный документ, ПутьКФайлу — имя файла для выгрузки, ТипФайлаТабличногоДокумента.XLSX — формат создаваемого файла. Поддерживаются следующие форматы Excel:

  • XLS95 — формат Excel 95;
  • XLS97 — формат Excel 97;
  • XLSX — формат Excel 2007.

Загрузка из файла осуществляется также достаточно просто:

ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПутьКФайлу, СпособЧтенияЗначенийТабличногоДокумента.Значение);

Здесь ПутьКФайлу — путь к загружаемому файлу Excel. СпособЧтенияЗначенийТабличногоДокумента.Значение определяет, каким образом нужно интерпретировать данные, считываемые из исходного документа. Доступны варианты:

  • Значение;
  • Текст.

Обмен через OLE

Обмен через технологию OLE automation, пожалуй, самый распространенный вариант программной работы с файлами Excel. Он позволяет использовать весь функционал, предоставляемый Excel, но отличается медленной скоростью работы по сравнению с другими способами. Для обмена через OLE требуется установка MS Excel:

  • На компьютере конечного пользователя, если обмен происходит на стороне клиента;
  • На компьютере сервера 1С:Предприятие, если обмен происходит на стороне сервера.

Пример выгрузки:

// Создание COM-объекта
Эксель = Новый COMОбъект(«Excel.Application»);
// Отключение вывода предупреждений и вопросов
Эксель.DisplayAlerts = Ложь;
// Создание новой книги
Книга = Эксель.WorkBooks.Add();
// Позиционирование на первом листе
Лист = Книга.Worksheets(1);

// Запись значения в ячейку
Лист.Cells(НомерСтроки, НомерКолонки).Value = ЗначениеЯчейки;

// Сохранение файла
Книга.SaveAs(ИмяФайла);

// Закрытие Эксель и освобождение памяти
Эксель.Quit();
Эксель = 0;

Примеры чтения:

// —— ВАРИАНТ 1 ——

// Создание COM-объекта
Эксель = Новый COMОбъект(«Excel.Application»);
// Открытие книги
Книга = Эксель.Workbooks.Open(ПутьКФайлу);
// Позиционирование на нужном листе
Лист = Книга.Worksheets(1);

// Чтение значения ячейки, обычно здесь располагается цикл обхода ячеек
ЗначениеЯчейки = Лист.Cells(НомерСтроки, НомерКолонки).Value;

// Закрытие книги
Книга.Close(0);

// Закрытие Эксель и освобождение памяти
Эксель.Quit();
Эксель = 0;

// —— ВАРИАНТ 2 ——

// Открытие книги
Книга = ПолучитьCOMОбъект(ПутьКФайлу);
// Позиционирование на нужном листе
Лист = Книга.Worksheets(1);

// Чтение значения ячейки, обычно здесь располагается цикл обхода ячеек
ЗначениеЯчейки = Лист.Cells(НомерСтроки, НомерКолонки).Value;

// Закрытие книги
Книга.Application.Quit();

Для обхода всех заполненных строк листа Excel можно использовать следующие приемы:

// —— ВАРИАНТ 1 ——
КоличествоСтрок = Лист.Cells(1, 1).SpecialCells(11).Row;
Для НомерСтроки = 1 По КоличествоСтрок Цикл
ЗначениеЯчейки = Лист.Cells(НомерСтроки, НомерКолонки).Value;
КонецЦикла;

// —— ВАРИАНТ 2 ——
НомерСтроки = 0;
Пока Истина Цикл
НомерСтроки = НомерСтроки + 1;
ЗначениеЯчейки = Лист.Cells(НомерСтроки, НомерКолонки).Value;
Если НЕ ЗначениеЗаполнено(ЗначениеЯчейки) Тогда
Прервать;
КонецЕсли;
КонецЦикла;

Вместо последовательного обхода всех строк листа можно выгрузить все данные в массив и работать с ним. Такой подход будет быстрее при чтении большого объема данных:

ВсегоКолонок = Лист.Cells(1, 1).SpecialCells(11).Column;
ВсегоСтрок = Лист.Cells(1, 1).SpecialCells(11).Row;

Область = Лист.Range(Лист.Cells(1, 1), Лист.Cells(ВсегоСтрок, ВсегоКолонок));
Данные = Область.Value.Выгрузить();

В таблице ниже приведены наиболее востребованные свойства и методы для работы с Excel через OLE:

Действие Код Комментарий
Работа с приложением
Установка видимости окна приложения Эксель.Visible = Ложь;
Установка режима вывода предупреждений (выводить/не выводить) Эксель.DisplayAlerts = Ложь;
Закрытие приложения Эксель.Quit();
Работа с книгой
Создание новой книги Книга = Эксель.WorkBooks.Add();
Открытие существующей книги Книга = Эксель.WorkBooks.Open(ИмяФайла);
Сохранение книги Книга.SaveAs(ИмяФайла);
Закрытие книги Книга.Close(0);
Работа с листом
Установка текущего листа Лист = Книга.WorkSheets(НомерЛиста);
Установка имени Лист.Name = Имя;
Установка защиты Лист.Protect();
Снятие защиты Лист.UnProtect();
Установка ориентации страницы Лист.PageSetup.Orientation = 2; 1 — книжная, 2 — альбомная
Установка левой границы Лист.PageSetup.LeftMargin = Эксель.CentimetersToPoints(Сантиметры);
Установка верхней границы Лист.PageSetup.TopMargin = Эксель.CentimetersToPoints(Сантиметры);
Установка правой границы Лист.PageSetup.RightMargin = Эксель.CentimetersToPoints(Сантиметры);
Установка нижней границы Лист.PageSetup.BottomMargin = Эксель.CentimetersToPoints(Сантиметры);
Работа со строками, колонками, ячейками
Установка ширины колонки Лист.Columns(НомерКолонки).ColumnWidth = Ширина;
Удаление строки Лист.Rows(НомерСтроки).Delete();
Удаление колонки Лист.Columns(НомерКолонки).Delete();
Удаление ячейки Лист.Cells(НомерСтроки, НомерКолонки).Delete();
Установка значения Лист.Cells(НомерСтроки, НомерКолонки).Value = Значение;
Объединение ячеек Лист.Range(Лист.Cells(НомерСтроки, НомерКолонки), Лист.Cells(НомерСтроки1, НомерКолонки1)).Merge();
Установка шрифта Лист.Cells(НомерСтроки, НомерКолонки).Font.Name = ИмяШрифта;
Установка размера шрифта Лист.Cells(НомерСтроки, НомерКолонки).Font.Size = РазмерШрифта;
Установка жирного шрифта Лист.Cells(НомерСтроки, НомерКолонки).Font.Bold = 1; 1 — жирный шрифт, 0 — нормальный
Установка курсива Лист.Cells(НомерСтроки, НомерКолонки).Font.Italic = 1; 1 — курсив, 0 — нормальный
Установка подчеркнутого шрифта Лист.Cells(НомерСтроки, НомерКолонки).Font.Underline = 2; 2 — подчеркнутый, 1 — нет

Для того, чтобы узнать какое свойство нужно менять или какой метод вызвать можно воспользоваться макросами Excel. Если записать макрос с требуемыми действиями, то после можно посмотреть программный код на VBA записанного макроса.

Использование COMSafeArray

При выгрузке больших объемов данных из 1С в Excel для ускорения можно использовать объект COMSafeArray. Согласно определению из синтакс-помощника, COMSafeArray — объектная оболочка над многомерным массивом SafeArray из COM. Позволяет создавать и использовать SafeArray для обмена данными между COM-объектами. Проще говоря, это массив значений, который можно использовать для обмена между приложениями по технологии OLE.

// Создание COMSafeArray
МассивКом = Новый COMSafeArray(«VT_Variant», ВсегоКолонок, ВсегоСтрок);
// Заполнение COMSafeArray
Для Стр = 0 По ВсегоСтрок1 Цикл
Для Кол = 0 По ВсегоКолонок1 Цикл
МассивКом.SetValue(Кол, Стр, Значение);
КонецЦикла;
КонецЦикла;
// Присвоение области листа Excel значений из COMSafeArray
Лист.Range(Лист.Cells(1, 1), Лист.Cells(ВсегоСтрок, ВсегоКолонок)).Value = МассивКом;

Обмен через ADO

Файл Excel при обмене через ADO представляет собой базу данных, к которой можно обращаться при помощи SQL-запросов. Установка MS Excel не требуется, но обязательно наличие драйвера ODBC, при помощи которого будет осуществляться доступ. Используемый драйвер ODBC определяется при указании строки соединения к файлу. Обычно требуемый драйвер уже установлен на компьютере.

Обмен через ADO заметно быстрее обмена через OLE, но при выгрузке нет возможности использовать функционал Excel для оформления ячеек, разметки страниц, задания формул и т.д.

Пример выгрузки:

// Создание COM-объекта для соединения
Соединение = Новый COMОбъект(«ADODB.Connection»);

// Установка строки соединения
Соединение.ConnectionString = «
|Provider=Microsoft.ACE.OLEDB.12.0;
|Data Source=»+ИмяФайла+«;
|Extended Properties=»»Excel 12.0 XML;HDR=YES»»;»;
Соединение.Open(); // Открытие соединения

// Создание COM-объекта для команды
Команда = Новый COMОбъект(«ADODB.Command»);
Команда.ActiveConnection = Соединение;

// Присвоение текста команды для создания таблицы
Команда.CommandText = «CREATE TABLE [Лист1] (Колонка1 char(255), Колонка2 date, Колонка3 int, Колонка4 float)»;
Команда.Execute(); // Выполнение команды

// Присвоение текста команды для добавления строки таблицы
Команда.CommandText = «INSERT INTO [Лист1] (Колонка1, Колонка2, Колонка3, Колонка4) values (‘абвгдеё’, ‘8/11/2017’, ‘12345’, ‘12345,6789’)»;
Команда.Execute(); // Выполнение команды

// Удаление команды и закрытие соединения
Команда = Неопределено;
Соединение.Close();
Соединение = Неопределено;

Для создания нового листа и формирования его структуры можно воспользоваться объектами ADOX.Catalog и ADOX.Table. В этом случае код примет вид:

// Создание COM-объекта для работы с книгой
Книга = Новый COMОбъект(«ADOX.Catalog»);
Книга.ActiveConnection = Соединение;

// Создание COM-объекта для работы со структурой данных на листе
Таблица = Новый COMОбъект(«ADOX.Table»);
Таблица.Name = «Лист1»;
Таблица.Columns.Append(«Колонка1», 202);
Таблица.Columns.Append(«Колонка2», 7);
Таблица.Columns.Append(«Колонка3», 5);
Таблица.Columns.Append(«Колонка4», 5);

// Создание в книге листа с описанной структурой
Книга.Tables.Append(Таблица);
Таблица = Неопределено;
Книга = Неопределено;

В приведенном примере в методе

Таблица.Columns.Append(«Колонка1», 202);

во втором параметре указывается тип колонки. Параметр необязательный, вот некоторые значения типа колонки:

  • 5 — adDouble;
  • 6 — adCurrency;
  • 7 — adDate;
  • 11 — adBoolean;
  • 202 — adVarWChar;
  • 203 — adLongVarWChar.

Пример чтения:

// Создание COM-объекта для соединения
Соединение = Новый COMОбъект(«ADODB.Connection»);

// Установка строки соединения
Соединение.ConnectionString = «
|Provider=Microsoft.ACE.OLEDB.12.0;
|Data Source=»+ИмяФайла+«;
|Extended Properties=»»Excel 12.0 XML;HDR=YES»»;»;
Соединение.Open(); // Открытие соединения

// Создание COM-объекта для получения выборки
Выборка = Новый COMОбъект(«ADODB.Recordset»);
ТекстЗапроса = «SELECT * FROM [Лист1$]»;

// Выполнение запроса
Выборка.Open(ТекстЗапроса, Соединение);

// Обход результата выборки
Пока НЕ Выборка.EOF() Цикл
ЗначениеКолонки1 = Выборка.Fields.Item(«Колонка1»).Value; // Обращение по имени колонки
ЗначениеКолонки2 = Выборка.Fields.Item(0).Value; // Обращение по индексу колонки
Выборка.MoveNext();
КонецЦикла;

Выборка.Close();
Выборка = Неопределено;
Соединение.Close();
Соединение = Неопределено;

В строке соединения параметр HDR определяет как будет восприниматься первая строка на листе. Возможны варианты:

  • YES — первая строка воспринимается как названия колонок. К значениям можно обращаться по имени и по индексу колонки.
  • NO — первая строка воспринимается как данные. К значениям можно обращаться только по индексу колонки.

В приведенных примерах рассмотрено лишь несколько объектов ADO. Объектная модель ADO состоит из следующих объектов:

  • Connection;
  • Command;
  • Recordset;
  • Record;
  • Fields;
  • Stream;
  • Errors;
  • Parameters;
  • Properties.

Выгрузка без программирования

Для сохранения данных из 1С в Excel не всегда целесообразно прибегать к программированию. Если в режиме Предприятия пользователь может отобразить требуемые для выгрузки данные, то, их возможно сохранить в Excel без программирования.

Для сохранения табличного документа (например, результата отчета) можно вызвать команду Сохранить или Сохранить как… главного меню.

Сохранение табличного документа 1С

В открывшемся окне требуется выбрать каталог, имя и формат сохраняемого файла.

Для сохранения данных динамических списков (например, списка номенклатуры) необходимо:

  1. Вывести данные в табличный документ при помощи команды Еще ⇒ Вывести список…;
  2. Сохранить табличный документ в требуемый формат.

Сохранение динамического списка

Понравилась статья? Поделить с друзьями:
  • Формат данных вводимых в ячейку excel
  • Формат данных в excel что это такое
  • Формат данных в excel с условием если
  • Формат данных в excel с примерами
  • Формат абзац позволяет в word