|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.09.2012, 08:54 | #1 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
Организация корректного цикла
Добрый день, уважаемые!
Есть макрос который находит в столбце 1 текущего листа искомые значения из листа "СУ" столбец 2 и делит конкретные ячейки строки (где найдены значения) на соответсвующие значения из листа "СУ" столбец 3. Загвоздка в том, что макрос находит значение (i) делит и переходит к следующему i, а мне надо чтобы он провел операцию по всем i в столбце, только потом перешел к следующему. Помогите сделать правильный цикл. Бьюсь долго с этим. Код:
___________ Код нужно оформлять по правилам: тегом [CODE]..[/СODE] (это кнопочка с решёточкой #) Не забывайте об этом! Модератор. Последний раз редактировалось Serge_Bliznykov; 27.09.2012 в 09:16. |
27.09.2012, 09:45 | #2 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
Составлять таблицу, чтобы понять проблему, почему-то не хочется
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
27.09.2012, 10:03 | #3 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
Добавил пример) Т.е. макрос пробегается по первой найденной строке с фамилией и перескакивает на следующую фамилию, хотя надо бы чтобы по вем строкам с искомой фамилией.
|
27.09.2012, 15:52 | #4 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
Может быть я не совсем понятно описал просьбу... Если это так - скажите, пожалуйста, постараюсь более точно описать.
|
27.09.2012, 16:24 | #5 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
В Вашем коде нужно использовать FindNext.
Но вообще есть мысль код переделать наоборот - будет проще. Это если данные как в примере, без большого количества "левых" записей. Общее количество не важно - просто если много записей, которые не нужно обрабатывать, то будет низкий КПД. Я думаю использовать словарь и обычный цикл.
webmoney: E265281470651 Z422237915069 R418926282008
|
27.09.2012, 16:35 | #6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
27.09.2012, 18:16 | #7 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
Спасибо! Я подозревал что здесь лучше делать на словаре, но использовать его в коде пока не научился. Буду осваивать на вашем примере.
|
27.09.2012, 18:36 | #8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Ну здесь от словаря выгоды в скорости мало - т.к. данных-критериев не много.
Но зато код получается проще, нет ещё одного цикла в цикле. Т.е. сперва в цикле заполнили словарь, затем просто с ним сверяемся, и если значение exists, то сразу из словаря берём нужный делитель. И на второй лист лазить не нужно А все циклы в цикле - это чтоб обработать все ячейки: 1 цикл по столбцу имён 2 цикл по диапазонам из arr 3 цикл уже по ячейкам этих диапазонов Тут можно было один цикл убрать - если массив arr сделать как у Вас Ну а если налаживать Ваш вариант на Find/FindNext - то там ещё один цикл добавится, по найденным. Но имхо всё вместе будет выглядеть сложнее. Но если нужных имён 10% от общего количества - то думаю на Find/FindNext будет быстрее. Смотрите сами, что больше нравится - но мне FindNext писать неохота...
webmoney: E265281470651 Z422237915069 R418926282008
|
27.09.2012, 18:48 | #9 |
Форумчанин
Регистрация: 17.03.2009
Сообщений: 226
|
Спасибо огромное за пояснения! Очень признателен что тратите своё время на меня, да еще и безвозмездно :-)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Организация цикла | лесяя | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 10.06.2011 00:00 |
Организация цикла If ... else | 4e4en | JavaScript, Ajax | 5 | 07.11.2010 21:30 |
Организация цикла While | Ra88 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 29.09.2010 09:11 |
Организация цикла | mephist | Microsoft Office Excel | 2 | 17.07.2009 16:27 |
Организация корректного поиска в связанных таблицах посредством SQL в Delphi | Krechet | БД в Delphi | 9 | 10.04.2009 16:40 |