Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Написал макрос, там в цикле перерисовывается диаграмма. Как вставить кнопку остановки макроса, т.к. данных очень много и не всегда может быть желание дождаться конца. Я кнопку нарисовал. В листе где она находиться прописал что делать когда она нажимается (может не правильно) Код: plaintext 1. 2. 3. Цикл в макросе задан следующим образом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Как теперь внутрь цикла вставить, чтобы принажатии кнопки i становилось равным LastRow? Заранее благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:19 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
вставить команду DoEvents в цикл (там, где у вас комментарий) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:24 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, В общем сработало программа остановилась, но из-за ошибки :) Код: plaintext Надо просто DoEvents написать или имя кнопки указать тоже ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:38 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhShocker.Pro, В общем сработало программа остановилась, но из-за ошибки :) Код: plaintext Надо просто DoEvents написать или имя кнопки указать тоже ? Покажите весь существенный код, включая определение переменных и укажите строку, на которой произошла ошибка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:44 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:45 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Код: plaintext 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. Перед запуском щелкаю на диаграмму которая потом перерисовывается, иначе выскакивает таже ошибка. Про явное указание типов переменных, я уже где-то читал, но здесь не стал заморачиваться, чтобы еще не искать как переменные с помощью Dim определяются :). Но здесь я так понимаю это не причем. Здесь видимо когда я щелкаю на кнопку диаграмма перестает быть активной и программа не знает к чему применить команду ActiveChart.SeriesCollection(1).Values (насколько я понял). Я раньше встречал вот такую команду Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 20:54 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, было несколько диаграм раньше, поэтому не знал какой номер сейчас добавил эту строчку все работает без выделения диаграммы в начале, но при нажатии кнопки программа не останавливается. Привожу конечный текст программы Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 21:09 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Вытащил Код: plaintext Теперь после нажатия кнопки вылетает ошибка Метод Select из класса Area завершен не верно и дебаг ссылается на эту строку Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 21:14 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhПро явное указание типов переменных, я уже где-то читал, но здесь не стал заморачиваться Но здесь я так понимаю это не причем В результате переменная i тут: Код: plaintext 1. 2. Код: plaintext 1. 2. 3. Это ваша ошибка при работе с переменными. Что же касается диаграмм мне сложнее дать совет, потому что я с ними очень мало работал. ЗЫ: DoEvents - это дать возможность выполнить другие события, так что лучше вставьте во внутренний цикл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 21:23 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro alegarhПро явное указание типов переменных, я уже где-то читал, но здесь не стал заморачиваться Но здесь я так понимаю это не причем В результате переменная i тут: Код: plaintext 1. 2. Код: plaintext 1. 2. 3. Это ваша ошибка при работе с переменными. Что же касается диаграмм мне сложнее дать совет, потому что я с ними очень мало работал. ЗЫ: DoEvents - это дать возможность выполнить другие события, так что лучше вставьте во внутренний цикл. Так я и хотел остановить цикл за счет того, что указал I = LastRow, т.к. i становиться равной LasRow и должна выйти из цикла, т.к. условие выполнения цикла пока i < LastRow Код: plaintext C графиками вопросов не осталось все работает прекрасно, надо только как то научиться выходить из цикла по желанию :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 23:41 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhЯ правильно понял, что это не сработает? Тогда как остановить цикл кнопкой? это не сработает, потому что вы не хотите разбираться - с оператором Dim - с областями определения переменных - с данным мной в FAQ советом - в моем сообщении, в котором я сказал, что эти переменные "i" - это две разных переменных (так же, как и LastRow) и никакого отношения друг к другу не имеют ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2010, 23:50 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, я посмотрю определение переменных, но что-то слишком сложно получается. Я решил использовать i = LasRow как самое простое, что мне на ум пришло, но может быть есть другой способ. Например, при нажатии кнопки просто завершить выполнение подпрограммы. Что нить типа, если кнопка нажата, то какой-нить параметр становиться True и тогда я смогу вставить If в котором, при True I = LastRow. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 00:01 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarh, Ё-мое я в третий раз вам повторяю, что проблема в том, что это РАЗНЫЕ переменные. Это неважно, что у них одинаковые имена, они определены в РАЗНЫХ процедурах. Будет это LastRow или True - это неважно. Важно то, что переменная "i" в процедуре Anim не изменяется. Чтобы она изменялась, вам нужно определить ее как глобальную или хотя бы на уровне модуля. Если бы вы прочитали мою статью на ФАКе и последовали бы моему совету поставить Option Explicit, вы бы это уже давно поняли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 00:19 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Спасибо, большое. Обязательно завтра прочитаю, как и говорил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 02:36 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 11:40 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro alegarhЯ правильно понял, что это не сработает? Тогда как остановить цикл кнопкой? это не сработает, потому что вы не хотите разбираться - с оператором Dim - с областями определения переменных - с данным мной в FAQ советом - в моем сообщении, в котором я сказал, что эти переменные "i" - это две разных переменных (так же, как и LastRow) и никакого отношения друг к другу не имеют Прочитал я ваш FAQ только связи я никакой не вижу. Там же не написано как задать переменную чтобы она учавствовала в обоих подпрограммах. А это я как и писал уже раньше читал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:13 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhПрочитал я ваш FAQ только связи я никакой не вижу. Там же не написано как задать переменную чтобы она учавствовала в обоих подпрограммах. А это я как и писал уже раньше читал. то есть вы вместо того, чтобы последовать умному совету решили все-таки поспорить на абстрактные темы :) как только у вас появился бы Option Explicit, у вас сразу бы возник вопрос к самому себе, куда написать Dim и вопрос был бы решен. К тому же, ответ на него уже дал alex77755 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:30 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
вот нашёлся ещё один не знающий Оклиптик ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:32 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alex77755, Спасибо, но теперь вообще работать перестало. To All Гляньте, пожалуйста, что я не туда вставил, т.к. из последнего примера у меня много не понятного было. Код: plaintext 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. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. Теперь запускаю и сразу ошибка Compile error: Invalid Inside procedure и Debag на первую строчку Sub Anim ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:38 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarh Теперь запускаю и сразу ошибка Compile error: Invalid Inside procedure и Debag на первую строчку Sub Anim 1) Вам перевести ошибку? 2) Я ведь четко в факе написал: авторНапишите в заголовке каждого своего модуля ( то есть перед всеми другими переменными, функциями и процедурами ): Option Explicit Если вы так внимательно будете слушать советы, вы эту, простенькую, в общем-то, задачу еще неделю решать будете ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:40 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarh, Вас это: прервать работу любого макроса можно парой клавиш Ctrl+Break Не устраивает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 15:41 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProЕсли вы так внимательно будете слушать советы, вы эту, простенькую, в общем-то, задачу еще неделю решать будете Также посмотрите внимательно, где alex77755 посоветовал вам определить переменную Flag и где вы ее определили. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:00 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProShocker.ProЕсли вы так внимательно будете слушать советы, вы эту, простенькую, в общем-то, задачу еще неделю решать будете Также посмотрите внимательно, где alex77755 посоветовал вам определить переменную Flag и где вы ее определили. Также внимательно посмотрите синтаксис Dim Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:01 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Ципихович Эндрю, Вот это дельный совет :) C него и надо было начинать. Но не красиво как-то получается, ошибка выскакивает и т.п. Из любви к искуству хочеться сделать красиво :) Я понимаю что это простенькая задача, но учитывая, что я первый раз позавчера вообще VBA открыл и с объектно-ориентированнм програмированием вообще не сталкивался, отсюда и все трудности. Не знаю, я что тут напзывается процедурами и функциями. Включил автоматическую вставку Option Explicit, запустил Макрорекордер и тогда понял, что не туда вставил. Аналогом Option Explicit пользуюсь в фортране, но там она после заголовка программы вставляется вроде, на память не помню, всегда смотрю синтаксис по своим предыдущим програмкам. Перевести я и сам могу только перевод мне ни о чем не говорит. "Неправильная внутренняя процедура". В общем поменял я все/ Заработало снова, но когда нажимаю кнопку стоп. Мне вылетает следующая ошибка Run Time Error 1004: Метод Select из класса PlotArea завершен не верно. Смысл было кнопку городить еслши все равно с ошибкой вылетает. Можно действительно Cntr+Breake и все :) Код: plaintext 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. 40. 41. 42. 43. 44. 45. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:04 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhМетод Select из класса PlotArea завершен не верно. Смысл было кнопку городить еслши все равно с ошибкой вылетает. Можно действительно Cntr+Breake и все :) Если бы спрашивали, как остановить макрос, получили бы другой совет. Я думаю, проблема в том, что как только вы уводите фокус с активной диаграммы на кнопку, у вас перестает быть актуальным объект ActiveChart. Замените его везде на: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:08 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro Также посмотрите внимательно, где alex77755 посоветовал вам определить переменную Flag и где вы ее определили. Также внимательно посмотрите синтаксис Dim Код: plaintext 1. Ой сколько читал, кто как настойчиво советует А почему не так: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:16 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarh, Вы всё-таки приложите/вышлете образец вашего творчества в виде файла? Поскольку ваш код настолько неоптимален, что все эти рассуждения о DoEvents и Ctrl+Break просто ничто... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:20 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Ципихович ЭндрюА почему не так: тебе, ЦЭ, все можно, особенно переходить дорогу на красный свет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:20 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProЦипихович ЭндрюА почему не так: тебе, ЦЭ, все можно, особенно переходить дорогу на красный свет. Добрый дяденька Я же говорю, дискуссий много лучше занять больше места и не дискутировать, чтов ВБА проблема с длиной кода??? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:26 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Ципихович ЭндрюДобрый дяденька Я же говорю, дискуссий много лучше занять больше места и не дискутировать, чтов ВБА проблема с длиной кода??? Чего ты прикопался? Я поправил у человека ошибку, а если тебе хочется подискутировать о том, сколько должно быть строк в твоем коде, заведи себе тему и там дискутируй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:30 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProalegarhМетод Select из класса PlotArea завершен не верно. Смысл было кнопку городить еслши все равно с ошибкой вылетает. Можно действительно Cntr+Breake и все :) Если бы спрашивали, как остановить макрос, получили бы другой совет. Я думаю, проблема в том, что как только вы уводите фокус с активной диаграммы на кнопку, у вас перестает быть актуальным объект ActiveChart. Замените его везде на: Код: plaintext Да не конечно хочется сделать все хорошо, поэтому с кнопкой лучше :) Я поменял везде Код: plaintext 1. 2. 3. 4. 5. 6. 7. Но при запуске сразу ошибка 438: объект не поддерживает это свойство или метод. Да даже не в этом дело. Почему вообще программа идет на следующий виток цикла, если я прописал Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Она же после нажатия кнопки должна сделать i = LastRow проверить While < LastRow и выйти из цикла, а она опять внутрь заходит. Т.е. не срабатывает чтоли кнопка. Вывел в ячейку значение i. Так вот после кнопки STOP ни фига оно не LastRow, а остается таким же какое оно в цикле. Т.е. все-таки не срабатывает кнопка. Код: plaintext 1. 2. Поправил, только не понятно почему через запятую нельзя, в Фортране вроде можно одинаковые типы через запятую указывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:34 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhЯ поменял везде Sheets("Data").ChartObjects(1).PlotArea.Select Но при запуске сразу ошибка 438: объект не поддерживает это свойство или метод. Тогда попробуйте ThisWorkbook.Charts(1) Без вашего файла пробовать самому проблематично, поэтому я даю теоретические советы alegarhДа даже не в этом дело. Почему вообще программа идет на следующий виток цикла, если я прописал А кто сказал, что она идет на следующий виток? Не должна. Дело в том, что когда вы увели фокус с диаграммы, но еще не нажали на кнопку, цикл продолжает крутиться, соответственно активной диаграммы нет, вот и возникает ошибка. alegarhОна же после нажатия кнопки должна сделать i = LastRow проверить While < LastRow и выйти из цикла, а она опять внутрь заходит. Т.е. не срабатывает чтоли кнопка. Вывел в ячейку значение i. Так вот после кнопки STOP ни фига оно не LastRow, а остается таким же какое оно в цикле. Т.е. все-таки не срабатывает кнопка. Или выкладывайте файл и код или осваивайте трассировку. alegarh Поправил, только не понятно почему через запятую нельзя, в Фортране вроде можно одинаковые типы через запятую указывать. Патамушта-марамушта. Таков синтаксис, это не фортран. Мне претензии предъявлять бессмысленно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 16:45 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProalegarhЯ поменял везде Sheets("Data").ChartObjects(1).PlotArea.Select Но при запуске сразу ошибка 438: объект не поддерживает это свойство или метод. Тогда попробуйте ThisWorkbook.Charts(1) Без вашего файла пробовать самому проблематично, поэтому я даю теоретические советы alegarhДа даже не в этом дело. Почему вообще программа идет на следующий виток цикла, если я прописал А кто сказал, что она идет на следующий виток? Не должна. Дело в том, что когда вы увели фокус с диаграммы, но еще не нажали на кнопку, цикл продолжает крутиться, соответственно активной диаграммы нет, вот и возникает ошибка. alegarhОна же после нажатия кнопки должна сделать i = LastRow проверить While < LastRow и выйти из цикла, а она опять внутрь заходит. Т.е. не срабатывает чтоли кнопка. Вывел в ячейку значение i. Так вот после кнопки STOP ни фига оно не LastRow, а остается таким же какое оно в цикле. Т.е. все-таки не срабатывает кнопка. Или выкладывайте файл и код или осваивайте трассировку. alegarh Поправил, только не понятно почему через запятую нельзя, в Фортране вроде можно одинаковые типы через запятую указывать. Патамушта-марамушта. Таков синтаксис, это не фортран. Мне претензии предъявлять бессмысленно. Я ни в коем случае ничего вам не предъявляю и вообще жутко благодарен, что вы уделили мне столько времени. Что такое трасировка я не знваю. Выложить хотел файл, но даже после того как я оставил в нем 3 строки в таблице, он занимает 170 лИ и не выкладывается. Отправил вам и Andre_tm на почту указанную в профиле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:03 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro Тогда попробуйте ThisWorkbook.Charts(1) Без вашего файла пробовать самому проблематично, поэтому я даю теоретические советы Так тоже не работает ругается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:07 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alegarhВыложить хотел файл, но даже после того как я оставил в нем 3 строки в таблице, он занимает 170 лИ и не выкладывается. даже не знаю, имеет ли смысл рассказывать вам о существовании архиваторов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:15 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Я уже с этим VBA совсем туплю, спасибо что просвятили :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:19 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
сам себе подсказал... :) итак 1) Код: plaintext 2) зачем нужно вот это? вроде без нее все выглядит так же Код: plaintext 3) ща разберусь с кнопкой стоп ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:24 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro 3) ща разберусь с кнопкой стоп Тут тоже все понятно вы определили переменную Flag ДВАЖДЫ это опять оказались РАЗНЫЕ переменные. Уберите определение переменной из модуля листа и все заработает А еще я вам давал совет - сделать DoEvents во внутреннем цикле иначе пока идет внутренний цикл, на кнопку нажать нельзя - получается дикое тупление А еще лучше - не дожидайтесь окончания цикла задержки, а выходите сразу: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:32 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro А еще лучше - не дожидайтесь окончания цикла задержки, а выходите сразу: Код: plaintext 1. 2. 3. сорри, у вас там наоборот, так что так: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:34 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProShocker.Pro А еще лучше - не дожидайтесь окончания цикла задержки, а выходите сразу: Код: plaintext 1. 2. 3. сорри, у вас там наоборот, так что так: Код: plaintext 1. 2. 3. блин вот так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:36 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Shocker.ProShocker.Proпропущено... сорри, у вас там наоборот, так что так: Код: plaintext 1. 2. 3. блин вот так: Код: plaintext 1. 2. 3. 4. Огромнейшее спасибо. Переменную Flag я второй раз определил, т.к. не работало. Вначале была в одном месте :) Exit Do конечно же лучше, я где-то раньше спрашивал как просто выйти из цикла. Еще раз огромное спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2010, 17:53 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
Апочему сразу не закончить процедуру? Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 06:12 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alex77755, Ok :) Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 07:51 |
|
||
|
Как вставить в макрос кнопку, чтобы останавливать цикл VBA Excell
|
|||
|---|---|---|---|
|
#18+
alex77755Апочему сразу не закончить процедуру? Код: plaintext 1. 2. после цикла могут быть еще какие-то нужные действия, поэтому не стал предлагать такой вариант ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 09:07 |
|
||
|
|

start [/forum/topic.php?all=1&fid=60&tid=2159281]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
76ms |
get tp. blocked users: |
1ms |
| others: | 266ms |
| total: | 423ms |

| 0 / 0 |
