Часто нужно прочитать информацию из Excel . Ниже пример простой процедуры.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
&НаКлиенте Процедура ПрочитатьФайл(ИмяФайла) ВыбранныйФайл = Новый Файл(ИмяФайла); Попытка Если НЕ ВыбранныйФайл.Существует() Тогда ВызватьИсключение("Файл не существует " + ИмяФайла); КонецЕсли; Excel = Новый COMОбъект("Excel.Application"); Excel.WorkBooks.Open(ИмяФайла); Excel.Sheets(1).Select(); // Выбрали первый лист Версия = Лев(Excel.Version,Найти(Excel.Version,".")-1); Если Версия = "8" тогда ФайлСтрок = Excel.Cells.CurrentRegion.Rows.Count; ФайлКолонок = Макс(Excel.Cells.CurrentRegion.Columns.Count, 13); Иначе ФайлСтрок = Excel.Cells(1,1).SpecialCells(11).Row; ФайлКолонок = Excel.Cells(1,1).SpecialCells(11).Column; Конецесли; //В цикле перебираем строки файла Для й = 1 по ФайлСтрок цикл //Выводим пользователю информацию Состояние("Считываем строки из файла (" + й + " из " + ФайлСтрок + ")", Цел(й/ФайлСтрок*100) , Excel.Cells(й, 1).Text,БиблиотекаКартинок.НайтиВСодержании); //Считываем текст из ячейки ТекстЯчейки = Excel.Cells(й, 1).Text; //Считываем значение ячейки ЗначениеЯчейки = Excel.Cells(й, 1).Value; КонецЦикла; Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; Если НЕ Excel = Неопределено тогда Excel.DisplayAlerts = 0; Excel.Quit(); Excel.DisplayAlerts = 1; КонецЕсли; КонецПроцедуры |