Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как прочитать данные Excel файла с учетом фильтра
|
|||
|---|---|---|---|
|
#18+
Добрый день. Есть файл excel с данными с установленным фильтром по колонке. Не могу понять как реализовать цикл по отфильтрованному результату документа. Пока что реализовал обход всех данных с условием. Но если файл большой, это довольно длительная процедура. Пример кода с условием: Excel = Новый COMОбъект("Excel.Application"); xlLastCell = 11; Результат = 0; Попытка Excel.WorkBooks.Open(ПутьКФайлу); Состояние("Обработка файла Microsoft Excel..."); ExcelЛист = Excel.Sheets(1); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; ActiveCell = Excel.ActiveCell.SpecialCells(xlLastCell); RowCount = ActiveCell.Row; ColumnCount = ActiveCell.Column; Для Row = 2 По RowCount-1 Цикл //Пропускаем первую строку заголовков и последнюю с итогами Для Column = 1 По ColumnCount-4 Цикл //Нас интересуют первые 3 колонки из 7 Если Column = 1 Тогда //Это код сотрудника ТабНомерСотрудника = СокрЛП(ExcelЛист.Cells(Row,Column).Text); Сотрудник = Справочники.СотрудникиОрганизаций.НайтиПоКоду(ТабНомерСотрудника); ИначеЕсли Column = 3 Тогда //Это результат начисления Результат = ?(ExcelЛист.Cells(Row,Column).Text = "", 0, Число(ExcelЛист.Cells(Row,Column).Text)); КонецЕсли; КонецЦикла; Если Результат > 0 Тогда НоваяСтрока = Начисления.Добавить(); НоваяСтрока.ТабельныйНомер = Сотрудник.Код; НоваяСтрока.Сотрудник = Сотрудник; НоваяСтрока.ПодразделениеОрганизации = Сотрудник.ПодразделениеОрганизации; НоваяСтрока.Результат = Результат; КонецЕсли; КонецЦикла; ФормаПрогресБар.Закрыть(); Excel.WorkBooks.Close(); Excel = 0; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2012, 10:22 |
|
||
|
Как прочитать данные Excel файла с учетом фильтра
|
|||
|---|---|---|---|
|
#18+
FeeL86, через ренж получаете область и одной командой получаете данные из Екселя в таблицу значений в 1С, затем с полученной таблицей делаете что надо. ... Область = ЛистЭксель.Range(ЛистЭксель.Cells(НомерПервойСтроки,1), ЛистЭксель.Cells(ВсегоСтрок, ВсегоКолонок)); тзДанные = Область.Value.Выгрузить(); ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2012, 13:25 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=37843743&tid=1520369]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 395ms |

| 0 / 0 |
