Для подключения используем следующую строку
СтрокаПодключения = "
|Provider=Microsoft.ACE.OLEDB.12.0;
|Data Source="+ИмяФайлаЭксель+";
|Extended Properties=""Excel 12.0;HDR=Yes;IMEX=0;""";
Создаем соединение
Connection = Новый COMОбъект("ADODB.Connection");
Connection.Open(СтрокаПодключения);
Command = Новый COMОбъект("ADODB.Command");
Command.ActiveConnection = Connection;
Command.CommandType = 1;
Пишем простой запрос (в результате получим остаток 20 номенклатур на счете 41.01 с количеством и суммой из регистра бухгалтерии)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 20
| ХозрасчетныйОстатки_КонОст.Субконто1 КАК Номенклатура,
| ХозрасчетныйОстатки_КонОст.СуммаОстаток КАК СуммаОстаток,
| ХозрасчетныйОстатки_КонОст.КоличествоОстаток КАК КоличествоОстаток
|{ВЫБРАТЬ
| Номенклатура.*,
| Сумма,
| Количество}
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(&д2, Счет = ЗНАЧЕНИЕ(ПланСчетов.хозрасчетный.ТоварыНаСкладах), , ) КАК ХозрасчетныйОстатки_КонОст";
Запрос.УстановитьПараметр("д2",КонецДня(ТекущаяДата()));
Выборка = Запрос.Выполнить().Выбрать();
Создаем таблицу для выгрузки в excel
ИмяТаб = "Главная";
Command.CommandText = "CREATE TABLE ["+ИмяТаб+"] ([На дату] date, Номенклатура char(255), [Количество остаток] float, [Сумма остаток] float)";
Command.Execute();
Заполняем таблицу данными выборки
Пока Выборка.Следующий() Цикл
Command.CommandText = "
|INSERT INTO ["+ИмяТаб+"]
|VALUES ('"
+КонецДня(ТекущаяДата())+"','"
+Выборка.Номенклатура.Наименование+"','"
+Выборка.КоличествоОстаток+"','"
+Выборка.СуммаОстаток+"')";
Command.Execute();
КонецЦикла
Данный код протестирован на платформе 8.3.15.1869, конфигурации Бухгалтерия предприятия, редакция 3.0 (3.0.79.14), Microsoft Office 2016 (MS Excel 16.0.4561.1000)
Решение универсальное, будет работать в любой конфигурации (необходимо только изменить в коде запрос и структуру таблицы для файла excel)
Ниже можно скачать готовую обработку