Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Обход листов Excel в 1с 77

v7: Обход листов Excel в 1с 77
Я
   Aldnepr
 
04.08.21 - 11:53
Требуется с книги Екселя, начиная со 2 листа по 6 вытянуть данные в ТЗ. У меня тянет  как раз только с первого листа (который мне и не нужен), но делает пять проходов как положено (по к-ву правильно выходит). В итоге получаю таблицу с повторяющимися данными. Листам заданы имена, но это же не должно влиять в случае перебора по количеству, не по именам?

Excel = СоздатьОбъект("Excel.Application");
    Книга=Excel.Workbooks.Open(Сокрлп(ИмяФайла));
    КоличествоЛистов=Книга.Worksheets.Count;
  
  Для НомерЛиста=2 По КоличествоЛистов Цикл  
       Лист = Книга.Worksheets(НомерЛиста);
     Строк = Excel.Cells.CurrentRegion.Rows.Count;
    Для ТекСтрока = 2 По Строк Цикл              
        Если ОбработатьСтроку(ТЗ,Тов, ТекСтрока, Excel)= 0 Тогда
            Возврат;
        КонецЕсли;
    КонецЦикла;
КонецЦикла;
   ChMikle
 
1 - 04.08.21 - 12:00
Книга = Эксель.WorkBooks.Open(ПутьКФайлу);
//ПутьКФайлу - полный путь к файлу книги Excel.


//Выбор листа книги для работы с ним:

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

Лист = Книга.WorkSheets(ИмяЛиста);
// где НомерЛиста - номер листа в книге, ИмяЛиста - имя листа в книге.


// Получение значения ячейки листа:

Значение = Лист.Cells(НомерСтроки, НомерКолонки).Value;
   ChMikle
 
2 - 04.08.21 - 12:01
В теории отсюда и далее вместо 
Excel использовать Лист
   Aldnepr
 
3 - 04.08.21 - 12:09
(2) Да, все верно! Я не указал с какого листа брать ячейки, вот и брало  с первого. Excel заменил на Лист и все поехало. Спасибо!
   ChMikle
 
4 - 04.08.21 - 12:27
всегда пожалуйста

Список тем форума
 
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.