|
Алгоритм обхода файла эксель. Нид доработка. | ☑ | ||
---|---|---|---|---|
0
Solitar
16.03.12
✎
12:52
|
Суть вот в чем, есть файл эксель и я заполняю определенные поля в нем на основании запроса к документу. Если в документе есть номенклатура, которой нет в эксель файле, нужно вывести сообщение.
Пока Выборка.Следующий() Цикл //Выборка - результат запроса к доку Для Лист = 1 по КоличествоЛистов Цикл Excel.Sheets(Лист).select(); ВсегоКолонок = Excel.Cells(1,1).SpecialCells(11).Column; ВсегоСтрок = Excel.Cells(1,1).SpecialCells(11).Row; Для Строка = 1 по ВсегоСтрок цикл Если СОкрЛП(Excel.Cells(строка, Объект.Наименование).Value) = СОкрЛП(Выборка.Номенклатура) Тогда Excel.Cells(строка, Объект.КолонкаСЗаказом).Value = Выборка.Количество; КонецЕсли; КонецЦикла; КонецЦикла; КонецЦикла; Поидее, когда нашлась позиция, то нужно переходить в выборке на след. элемент, но не нашел метода который мог бы это сделать. Мб еще есть какие нить варианты? |
|||
1
Solitar
16.03.12
✎
12:53
|
возможно не так написал цикл, поправьте плиз.
|
|||
2
Wobland
16.03.12
✎
12:53
|
>нужно переходить в выборке на след. элемент
Продолжить |
|||
3
Solitar
16.03.12
✎
13:01
|
Продолжить кидает меня на "Для Строка = 1 по ВсегоСтрок цикл".
Это не подходит, т.к. Выборка не изменяется. |
|||
4
Ненавижу 1С
гуру
16.03.12
✎
13:03
|
Прервать
|
|||
5
Tatitutu
16.03.12
✎
13:04
|
(0)
1.Если в документе есть номенклатура, которой нет в эксель файле, нужно вывести сообщение. - ты его (сообщение) нигде не выводишь установи флаг при выборке в 0, нашла 1 в конце цикла если 0, то сообщить Выборка.Наименование |
|||
6
Wobland
16.03.12
✎
13:05
|
(5) а тупо сообщать пустую строку можно ж? вроде даже окно не открывается...
|
|||
7
Tatitutu
16.03.12
✎
13:07
|
(6)Поидее, когда нашлась позиция, то нужно переходить в выборке на след. элемент, но не нашел метода который мог бы это сделать
- все у тебя там переходит ты сейчас перебираешь все строки документа и каждый раз при получении строки лопатишь файл екселя - трудоемко и затратно зачем тебе всего колонок ? создай таблицу получи все поля из файла добавь адреса перебери документ в таблицу сверни таблицу, проанализируй - в разы быстрее будет |
|||
8
Solitar
16.03.12
✎
13:19
|
Огромное спасибо Tatitutu.
Все получилось. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |