При поиске загрузки Exel файлов в 1С самым распространенным бывает способ через компоненту, которая требует установленного microsoft office.
Хорошо, найдём другой способ, благо платформа не стоит на месте и прекрасно нам помогает в решении наших задач.
Итак, имеем:
1) exсel файл
2) считываем его в табличный документ
3) берём построитель запроса
4) источник данных наш табличный документ
5) считываем в ТЗ
Я всегда думал (и никогда не пробовал иначе), что при чтении exсel в табличный документ считывается только первый лист.
Но, оказывается, нет:
ТабличныйДокумент.Области - тут будут все наши листы
Перейдём к коду:
1. Считываем в табличный документ
ТабличныйДок = Новый ТабличныйДокумент();
ТабличныйДок.Прочитать(ИмяВременногоФайла);
2. Обходим области и считываем содержимое в таблицу значений
Для Каждого Область Из ТабличныйДок.Области Цикл
ЧитаемаяОбласть = ТабличныйДок.ПолучитьОбласть(Область.Имя);
// для каждого листа можем сделать свой обработчик чтения или все считать одинаково
Если СтрНачинаетсяС(Область.Имя, "ИмяЛиста") Тогда
ПостроительЗапроса = Новый ПостроительЗапроса;
ИсточникДанных = ЧитаемаяОбласть.Область(НомерПервойСтроки, НомерПервойКолонки, ЧитаемаяОбласть.ВысотаТаблицы, ЧитаемаяОбласть.ШиринаТаблицы);
ПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных(ИсточникДанных );
ПостроительЗапроса.ДобавлениеПредставлений = ТипДобавленияПредставлений.НеДобавлять;
ПостроительЗапроса.ЗаполнитьНастройки();
ПостроительЗапроса.Выполнить();
ТаблицаДанных = ПостроительЗапроса.Результат.Выгрузить();
Иначе
Сообщить("Область с именем " + Область.Имя + " не известна.");
КонецЕсли;
КонецЦикла;
Возможные проблемы могут быть с большими эксель файлами, не делал прям специально каких то огромных файлов и их чтение, пока какие попадались для загрузки, прекрасно поддавались данному методу.
Готовое решение
Загрузка документов из Excel в 1С одним нажатием!
С помощью данной обработки вы сможете загружать любые товарные документы буквально в один клик! Для загрузки необходимо просто выбрать файлы Excel и нажать кнопку "Загрузить". Простейший интерфейс и мощный механизм поиска номенклатуры. Распознает документы любой формы (УПД, ТОРГ-12, заказ, отчет комиссионера и т.д.)