Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2011, 20:39   #1
Сергей846
Пользователь
 
Регистрация: 22.04.2010
Сообщений: 15
По умолчанию Запуск макроса при условии

Подскажите как в макросе прописать запуск процедуры №1 если в ячейке "A1" содержится "GBR", а если не содержится процедуры №2. Заранее спасибо.
Сергей846 вне форума Ответить с цитированием
Старый 18.04.2011, 23:17   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Так можно
Код:
Sub tt()
    Dim значение As String
    значение = [a1]
    If значение = "GBR" Then
        Call MsgBox("Процедура 1", vbExclamation, "")
    Else
        Call MsgBox("Процедура 2", vbExclamation, "")
    End If
End Sub
з.ы. вместо MsgBox название Ваших процедур (или код)
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499

Последний раз редактировалось VictorM; 18.04.2011 в 23:25.
VictorM вне форума Ответить с цитированием
Старый 19.04.2011, 00:44   #3
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Вить, я бы попроще сделал:
Код:
Sub tt()
    Dim z$: z = IIf([a1] = "GBR", "Процедура1", "Процедура2"): Application.Run z
End Sub
П.С.
Это после решений Сергея(SAS888) маниакальное желание все упрощать и сокращать:-)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 19.04.2011 в 00:46.
kuklp вне форума Ответить с цитированием
Старый 19.04.2011, 05:48   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
...маниакальное желание все упрощать и сокращать
Ну, тогда так:
Код:
Sub tt()
    Application.Run IIf([A1] = "GBR", "Процедура1", "Процедура2")
End Sub
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 19.04.2011, 08:24   #5
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Умница Серег, что еще скажешь:-)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 19.04.2011, 08:26   #6
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Нужное получил, отметиться посчитал ненужным.
vikttur вне форума Ответить с цитированием
Старый 19.04.2011, 08:43   #7
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Да, нехорошо. Но еще и не вечер, может зайдет еще, отпишется
Спасибо, Вить.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 20.04.2011, 20:30   #8
Сергей846
Пользователь
 
Регистрация: 22.04.2010
Сообщений: 15
По умолчанию

Всем спасибо! Не было возможности сразу отблагодарить. Вариантов оч. много. Спасибо!
Сергей846 вне форума Ответить с цитированием
Старый 01.11.2011, 17:36   #9
OMEN_6666
Пользователь
 
Аватар для OMEN_6666
 
Регистрация: 26.10.2010
Сообщений: 34
По умолчанию

Спасибо, тоже искал способ запуска макросов по условию!
OMEN_6666 вне форума Ответить с цитированием
Старый 01.11.2011, 17:51   #10
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Код:
Sub tt()
Select Case [a1]
   Case "GBR": Процедура1: Exit Sub
End Select
Процедура2
End Sub

Sub Процедура1(): MsgBox 1: End Sub
Sub Процедура2(): MsgBox 2: End Sub
Можно Case нарастить ещё условиями, и Процедура2 тоже перенести внутрь.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск Макроса при открытии книги sasha_prof Microsoft Office Excel 9 12.07.2011 14:48
Запуск макроса при открытии файла ПавелАлександрович Microsoft Office Excel 4 04.03.2011 10:07
запуск макроса при изменении ячейки Бонни Microsoft Office Excel 2 26.04.2010 11:44
Запуск макроса с параметрами из другого макроса Saladin Microsoft Office Excel 2 19.01.2009 09:43
Выполнения макроса(с подстановкой имени) при условии ячейки... MaxZoa Microsoft Office Excel 7 22.04.2008 11:08