Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 22:02

Чтение данных из файла Эксель во внешней обработке

Автор carwi, 10 апр 2023, 14:12

0 Пользователей и 1 гость просматривают эту тему.

carwi

Подскажите, пожалуйста, что я делаю не так. В форме внешней обработки для заполнения документа из экселевского документа есть процедура, в которой я хочу получать значение кода ТНВЭД. В экселевском файле это поле заполнено, однако когда я запускаю обработку появляется ошибка
"Поле объекта не обнаружено (КодТНВЭД)"


&НаКлиенте
Процедура ПрочитатьДанныеИзФайлаЭксельСпецификация(ПутьКФайлу) Экспорт

//////////Лист.Cells(1,1) 1-е ЭТО СТРОКА, 2-е ЭТО СТОЛБЕЦ//////////
// Пытаемся открыть файл Excel
Эксель = Новый COMОбъект ("Excel.Application");
Попытка
Документ = Эксель.Workbooks.Open(ПутьКФайлу);
Исключение
Сообщить(ОписаниеОшибки(), СтатусСообщения.Важное);
Эксель.Application.DisplayAlerts = 0;                 
Эксель.Application.Quit();
Возврат;
КонецПопытки;

Лист = Документ.Worksheets(1);
// Получаем общее количество использованных строк
ВсегоСтрок = Лист.Cells(1,1).SpecialCells(11).Row;

// Перебираем строки в файле, заносим в таблицу
Для ИндексСтроки = 11 по ВсегоСтрок Цикл

// Читаем до тех пор, пока поле Артикул будет заполнено
Если СокрЛП(Строка(Лист.Cells(ИндексСтроки,2).Value)) = "" Тогда
Прервать;
КонецЕсли;

НоваяСтрока = ТаблицаЗагрузки.Добавить();
НоваяСтрока.Артикул    = СокрЛП(Строка(Лист.Cells(ИндексСтроки,2).Value));
НоваяСтрока.Описание    = СокрЛП(Строка(Лист.Cells(ИндексСтроки,3).Value));

        НоваяСтрока.КодТНВЭД    = СокрЛП(Строка(Лист.Cells(ИндексСтроки,6).Value));
   
        НоваяСтрока.Страна      = СокрЛП(Строка(Лист.Cells(ИндексСтроки,7).Value));
НоваяСтрока.Количество  = СокрЛП(Строка(Лист.Cells(ИндексСтроки,8).Value));
НоваяСтрока.ЕдИзм       = СокрЛП(Строка(Лист.Cells(ИндексСтроки,9).Value));
НоваяСтрока.Цена        = СокрЛП(Строка(Лист.Cells(ИндексСтроки,10).Value));

КонецЦикла;

// Закрываем за собой приложение Excel
Эксель.Application.DisplayAlerts = 0;
Эксель.Application.Quit();

КонецПроцедуры




antoneus

А в таблице загрузки колонка КодТНВЭД есть?

carwi


Теги: excel 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск