Задайте вопрос по 1с специалисту

Нажимая на кнопку, вы даете согласие на обработку своих персональных данных.
Политика конфиденциальности

Как создать файл Excel в 1С при помощи OLE?

Задача разово создать файл Excel в 1С или организовать постоянный обмен данными между этими программами возникает перед большинством бухгалтеров. Решить ее можно самостоятельно при помощи простейших команд и кодов или же - в более сложных ситуациях - при содействии специалистов.

Работа с таблицами в Excel и 1С

Программа 1С до 8 версии имела очень ограниченный функционал для работы с таблицами. Поэтому многие пользователи предпочитали, а обладатели версии 1С 7.7 и поныне предпочитают сохранять файл 1С с расширением .xls, чтобы затем дорабатывать его в более удобном Excel. Этот способ позволяет воспользоваться сильными сторонами обеих программ и выполнить необходимые расчеты в наиболее комфортной среде.

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

Существует и обратная проблема, когда 1С не "понимает" констант программы Microsoft и выводит их в виде чисел. Чтобы перевести их обратно в параметры, нужно зайти в справку или отладку табличного редактора и найти там числовое выражение различных констант.

Загрузка файла в Excel

Самый простой способ создания экселевского файла в 1С - это перевод документа в режим печати и последующее сохранение в табличном расширении .xls. На месте * должно стоять имя файла. По аналогии с этим способом вместо печатной формы можно вывести данные в макет и сохранить в табличном расширении.

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

  1. Открыть документ:

    • Книга=Эксель.WorkBooks.Open (ПутьКФайлу).

  2. Создать новый файл:

    • Попытка

    • Эксель= СоздатьОбъект("Excel.Application");

    • Исключение

    • Сообщить(ОписаниеОшибки() + "Программа Exсel не установлена на данном компьютере!");

    • Возврат

    • КонецПопытки;

    • Книга=Эксель.WorkBooks.Add().

  3. Выбрать лист:

    • Лист=Книга.WorkSheets(НомерЛиста).

Загрузка файла в 1С

Теперь рассмотрим, как перенести данные из таблицы Microsoft в 1С снова при помощи OLE:

  1. Получение доступа из 1С к запущенному приложению Эксель:

    • Попытка

    • Эксель= СоздатьОбъект("Excel.Application");

    • Исключение

    • Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!");

    • Возврат;

    • КонецПопытки.

  2. С последующим доступом к:

    • конкретному документу:

      • Книга=Эксель.WorkBooks.Open(ПутьКФайлу);

      • ПутьКФайлу - полный путь к файлу Excel;

    • листу:

      • Лист=Книга.WorkSheets(ИмяЛиста);

    • ячейке:

      • Значение=Лист.Cells(НомерСтроки,НомерКолонки).Value.

Чтобы не перегружать память и процессор компьютера, после выполнения необходимых команд следует запустить код Эксель.Quit();. Он закончит работу приложения.

При возникновении сложностей с использованием кодов к вам на помощь всегда готовы прийти квалифицированные консультанты. Специалисты помогут решить задачу перемещения большого объема данных или организации постоянного обмена данными между двумя приложениями. Необходимые операции будут отлажены на программном уровне.

ответим на все вопросы по работе с 1с

Нажимая на кнопку, вы даете согласие на обработку своих персональных данных.
Политика конфиденциальности

Рекомендуем также посмотреть:

Официальный статус партнера


Подпишись на наши акции и скидки!

Нажимая на кнопку, вы даете согласие на обработку своих персональных данных.
Политика конфиденциальности
8 (495) 374-59-14

Copyright © Все права принадлежат ГК Авангард Сервис, и защищены 2005-2017