Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
pyatka__ASD
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 20
#1

id нажатой кнопки - VBA

05.07.2010, 06:41. Просмотров 1535. Ответов 4
Метки нет (Все метки)

подскажите, пожалуйста, как определить нажатую кнопку. В форме созданы кнопки, и , если id равен id первой кнопки, вызвать макрос, если равен второй кнопке, то остановить макрос, если третьей, то завершить макрос.

Добавлено через 42 минуты
С id все ясно стало, а вот как запустить макрос?????

Visual Basic
1
2
3
If CommandButton1 Then
RunMacro (Muck1())
Else
Макрос Muck1 Public в другом модуле.......
еще надо приостановить и завершить макрос... подскажите

Добавлено через 5 минут
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub Кнопка30_Щелкнуть()
UserForm1.Show
If CommandButton1 Then
Macro.Run "Muck1"
Else
If CommandButton3 Then
Macro.Break "Muck1"
Else
If CommandButton2 Then
Macro.Reset "Muck1"
End If
End If
End If
End Sub

макрос не запускается...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2010, 06:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос id нажатой кнопки (VBA):

Как считать имя только что нажатой кнопки?
Добрый день, форумчане! Возник довольно странный вопрос. У меня на форме...

Как получить текст нажатой кнопки в word 2010?
Доброго дня! Ситуация следующая: несколько кнопок вызывает один макрос....

30 кнопок на форме в Excel, как получить индекс нажатой кнопки?
как из 30 кнопок на форме в Excel получить индекс нажатой кнопки? что-то типа:...

Вместо чисел в ячейку прописывать строковое значение нажатой кнопки
Public Sub IfThenSub() Dim nResult As Integer nResult = MsgBox("Нажмите...

Вставка названия нажатой фигуры-"кнопки" в ячейку
Есть несколько фигур-"кнопок" (А,В,С...) со своими уникальными макросами:...

Проверка нажатой кнопки
Составить схему подсоединение к микроконтроллера 8051 в программной среде...

4
Alex77755
10697 / 3272 / 543
Регистрация: 13.02.2009
Сообщений: 9,649
05.07.2010, 07:22 #2
Macro.Run - а что это такое?
Что бы прервать работу макроса можно ввести глобальный флаг и кнопкай менять его значение.
при определённом значении - выход из процедуры
Но в теле макроса надо иметь DoEvents

может так подойдёт:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim i, F
Private Sub CommandButton1_Click()
 
For i = 0 To 1000000
UserForm1.Caption = i
DoEvents
If F = 1 Then Stop: F = 0
If F = 2 Then Exit Sub
Next i
End Sub
 
Private Sub CommandButton2_Click()
F = 1
End Sub
 
Private Sub CommandButton3_Click()
F = 2
End Sub
0
pyatka__ASD
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 20
05.07.2010, 08:05  [ТС] #3
а как закончить макрос muck1, но из формы не выходить?
0
Alex77755
10697 / 3272 / 543
Регистрация: 13.02.2009
Сообщений: 9,649
05.07.2010, 08:09 #4
смотри выше
В моём макросе нет выхода из формы
0
pyatka__ASD
0 / 0 / 0
Регистрация: 23.05.2010
Сообщений: 20
05.07.2010, 08:13  [ТС] #5
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub CommandButton1_Click()
Call Muck1
F = 1
End Sub
 
Private Sub CommandButton3_Click()
F = 2
End Sub
 
Private Sub CommandButton2_Click()
For i = 0 To 1000000
UserForm1.Caption = i
DoEvents
If F = 1 Then Stop: F = 0
If F = 2 Then Exit Sub
Next i
End Sub
от выдает косяк....

Добавлено через 1 минуту
при нажатии 1 кнопки- запуск,
2 - пауза, потом при нажатии ее же - опять запуск, при нажатии - опять пауза и т.д

при нажатии 3 кнопки - выход
0
05.07.2010, 08:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2010, 08:13
Привет! Вот еще темы с решениями:

Name нажатой кнопки в TEdit
Есть несколько кнопок Button. При нажатии на одну из них в Edit должно...

Определение нажатой кнопки
Например, имеются 10 кнопок(button), им назначен один обработчик нажатия...

Подмена нажатой кнопки
Написал программку, через хук перехватывает сообщение от клавиатуры и...

Перехват нажатой кнопки
Здравствуйте, подскажите, как сделать так, что бы программа перехватывала...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru