Замечание: В Excel разделителем дробной части считается символ ",". Поэтому перед сохранением таблицы 1С в формате Excel замените в ней другой разделитель (например ".") на ",". Иначе в Excel с этими числами не удастся произвести вычисления, или они вообще не будут отображаться как числа. Например, в таблице 1С "15.2" отобразится в Excel как "15.фев".
Для 8.х заменить СоздатьОбъект( на Новый COMОбъект(
Чтение (Получение) данных из Excel
Доступ из 1С к Excel производится посредством OLE. Например, код
1 2 3 4 5 6 |
Попытка Эксель = СоздатьОбъект("Excel.Application"); Исключение Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!"); Возврат; КонецПопытки; |
позволит получить доступ через переменную "Эксель" к запущенному приложению Excel. А далее уже можно получить доступ к книге (файлу), листу и ячейке с данными.Чтобы открыть книгу (файл)
1 2 3 4 5 6 7 8 9 10 11 12 |
Книга = Эксель.WorkBooks.Open(ПутьКФайлу); //ПутьКФайлу - полный путь к файлу книги Excel. //Выбор листа книги для работы с ним: Лист = Книга.WorkSheets(НомерЛиста); //или Лист = Книга.WorkSheets(ИмяЛиста); // где НомерЛиста - номер листа в книге, ИмяЛиста - имя листа в книге. // Получение значения ячейки листа: Значение = Лист.Cells(НомерСтроки, НомерКолонки).Value; // где НомерСтроки, НомерКолонки - номер строки и номер колонки, на пересечении которых находится ячейка. |
Важно: не забывайте поле выполнения нужных действий добавлять код
1 |
Эксель.Quit(); |
, иначе запущенный процесс останется незавершенным и будет занимать память и процессор компьютера.
Вывод данных в Excel
Для вывода (выгрузки) данных в Excel необходимо либо открыть существующую книгу, либо создать новую, и выбрать рабочий лист для вывода данных. Открытие существующей книги описано выше, а для создания новой книги нужно использовать следующий код:
1 2 3 4 5 6 7 8 |
Попытка Эксель = СоздатьОбъект("Excel.Application"); Исключение Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!"); Возврат; КонецПопытки; Книга = Эксель.WorkBooks.Add(); |
Так как при создании книги в Excel автоматически создаются листы (Сервис->Параметры->Общие->Листов в новой книге), то нужно лишь произвести выбор листа, с которым будет вестись работа:
1 2 3 4 |
Лист = Книга.WorkSheets(НомерЛиста); // либо добавить в книгу новый лист, если необходимо: Лист = Книга.Sheets.Add(); |
Следующим шагом будет установка значения ячейки:
1 2 |
Лист.Cells(НомерСтроки, НомерКолонки).Value = Значение; // где НомерСтроки, НомерКолонки - номер строки и номер колонки, на пересечении которых находится ячейка. |
И в конце нужно произвести запись созданной книги:
1 2 3 4 5 6 7 |
Попытка Книга.SaveAs(ПутьКФайлу); Исключение Сообщить(ОписаниеОшибки()+" Файл не сохранен!"); Возврат; КонецПопытки; // где ПутьКФайлу - полный путь к файлу книги Excel (включая имя). |
Важно: не забывайте, что в имени файлов не должно содержаться символов \ / : * ? " > <