Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ожидание нажатия commandButton в цикле - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Ожидание нажатия commandButton в цикле (Макросы/Sub)
Ожидание нажатия commandButton в цикле
emkub Дата: Воскресенье, 11.08.2019, 03:04 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте, друзья!
На первый взгляд простая задачка, но не тут-то было...
Суть макроса: в окне UserForm поочерёдно появляются слова и кнопками нужно выбирать, какое сохранить, а какое "удалить". Проблема в том, что макрос пролетает без остановок до последней итерации, а нужно чтобы он ждал ответа, т.е. нажатия на любую кнопку (commandButton).
С помощью стандартного MsgBox задача решается элементарно. Но мы не ищем лёгких путей :) Хочется покрасивее.
Почти уверен, что нужно использовать [vba]
Код
DoEvents
[/vba]. Но как?
Помогите пожалуйста!
К сообщению приложен файл: ___.xlsm (24.9 Kb)
 
Ответить
СообщениеЗдравствуйте, друзья!
На первый взгляд простая задачка, но не тут-то было...
Суть макроса: в окне UserForm поочерёдно появляются слова и кнопками нужно выбирать, какое сохранить, а какое "удалить". Проблема в том, что макрос пролетает без остановок до последней итерации, а нужно чтобы он ждал ответа, т.е. нажатия на любую кнопку (commandButton).
С помощью стандартного MsgBox задача решается элементарно. Но мы не ищем лёгких путей :) Хочется покрасивее.
Почти уверен, что нужно использовать [vba]
Код
DoEvents
[/vba]. Но как?
Помогите пожалуйста!

Автор - emkub
Дата добавления - 11.08.2019 в 03:04
emkub Дата: Понедельник, 12.08.2019, 12:11 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Методом тыка что-то получилось. Но положительного результата всё-равно нет. Похоже, что не передаются переменные от нажатий кнопок формы...
К сообщению приложен файл: 7400324.xlsm (24.9 Kb)
 
Ответить
СообщениеМетодом тыка что-то получилось. Но положительного результата всё-равно нет. Похоже, что не передаются переменные от нажатий кнопок формы...

Автор - emkub
Дата добавления - 12.08.2019 в 12:11
bmv98rus Дата: Понедельник, 12.08.2019, 15:48 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
зачем чего-то ждать если на время работы формы надо просто остановить код , сделав форму модальной. А еще корректнее не форму N раз открывать в цикле, а формой крутить цикл и принимать решение что делать в зависимости от нажатых кнопок.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщениезачем чего-то ждать если на время работы формы надо просто остановить код , сделав форму модальной. А еще корректнее не форму N раз открывать в цикле, а формой крутить цикл и принимать решение что делать в зависимости от нажатых кнопок.

Автор - bmv98rus
Дата добавления - 12.08.2019 в 15:48
emkub Дата: Понедельник, 12.08.2019, 16:21 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Ха! Логично! Сейчас понял не до конца, но суть уловил.
Спасибо.
 
Ответить
СообщениеХа! Логично! Сейчас понял не до конца, но суть уловил.
Спасибо.

Автор - emkub
Дата добавления - 12.08.2019 в 16:21
emkub Дата: Суббота, 30.11.2019, 14:54 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
а формой крутить цикл и принимать решение что делать в зависимости от нажатых кнопок

Когда дело дошло до работы - моя версия работает, но очень коряво.
Вот теперь решил переделать по этому совету. Но не знаю, с какой стороны подступиться, куда вписать цикл, чтобы корректно работал.
Подскажите пожалуйста.
 
Ответить
Сообщение
а формой крутить цикл и принимать решение что делать в зависимости от нажатых кнопок

Когда дело дошло до работы - моя версия работает, но очень коряво.
Вот теперь решил переделать по этому совету. Но не знаю, с какой стороны подступиться, куда вписать цикл, чтобы корректно работал.
Подскажите пожалуйста.

Автор - emkub
Дата добавления - 30.11.2019 в 14:54
emkub Дата: Суббота, 30.11.2019, 15:14 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Наверное, достаточно просто показать, как с помощью UserForm крутить цикл.
 
Ответить
СообщениеНаверное, достаточно просто показать, как с помощью UserForm крутить цикл.

Автор - emkub
Дата добавления - 30.11.2019 в 15:14
bmv98rus Дата: Суббота, 30.11.2019, 15:53 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
Не хочется разбираться в коде, но Вам нужно для каждой кнопке прописать что она делает. При инициализации просто загрузить первую для обработки информацию, а далее 4 события,
1. Оставить - значит перейти к следующему ключу
2. Удалить - Удалить ключ и выполнить п.1
3. Перейти к следующему товару
4 Закрыть форму.

Забудьте про циклы, просто продвигайтесь от первого до последнего.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
СообщениеНе хочется разбираться в коде, но Вам нужно для каждой кнопке прописать что она делает. При инициализации просто загрузить первую для обработки информацию, а далее 4 события,
1. Оставить - значит перейти к следующему ключу
2. Удалить - Удалить ключ и выполнить п.1
3. Перейти к следующему товару
4 Закрыть форму.

Забудьте про циклы, просто продвигайтесь от первого до последнего.

Автор - bmv98rus
Дата добавления - 30.11.2019 в 15:53
emkub Дата: Суббота, 30.11.2019, 16:12 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Благодарю за оперативный ответ и за совет.
Буду пробовать.
 
Ответить
СообщениеБлагодарю за оперативный ответ и за совет.
Буду пробовать.

Автор - emkub
Дата добавления - 30.11.2019 в 16:12
emkub Дата: Понедельник, 02.12.2019, 02:16 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 171
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Еле родил! Пока не набросал элементарную блок-схему, вообще не мог сообразить, что куда писать. Но, похоже, получилось :) Ещё раз спасибо!
 
Ответить
СообщениеЕле родил! Пока не набросал элементарную блок-схему, вообще не мог сообразить, что куда писать. Но, похоже, получилось :) Ещё раз спасибо!

Автор - emkub
Дата добавления - 02.12.2019 в 02:16
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Ожидание нажатия commandButton в цикле (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!