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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 19.12.2008, 12:57   #1
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
Вопрос Как запустить макрос из ячейки?

Подскажите, можно ли это вообще осуществить?

Допустим, если в ячейке А1 выполняется условие В1>C1, то из ячеки А1 запускается макрос (пусть будет с названием "Тест"), находящийся в данной книге?

Ячейка А1: = Если(В1>C1; запуск макроса "Тест"; ничего не делать)
Maxx вне форума
Старый 19.12.2008, 13:03   #2
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
По умолчанию

какой именно макрос?

функцию запустить можно, и то с ограничениями на ее действия..

процедуру - нет.

но можно запустить макрос по какому либо событию, допустим пересчету ячеек - он тогда должен сам проверить выполнение условия(то , что вы предполагаете в a1), и решить, что делать дальше
slan вне форума
Старый 19.12.2008, 13:11   #3
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
По умолчанию

Ладно, как тогда сделать то, что Вы предлагаете?

В общем, задача следующая:
Есть цена в ячейке В1 и есть цена в ячейке С1.
По Вашему предложению я запускаю макрос на проверку условия В1>С1

если условия выполняется, то у меня должен запуститься другой макрос, который уже написан и прекрасно работает.

Т.е. я должен внутри одной процедуры запустить другую.Но как - я не знаю!
Maxx вне форума
Старый 19.12.2008, 13:16   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

В модуль нужного листа вставьте код:
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = [B1].Address Or Target.Address = [C1].Address Then If [B1] > [C1] Then Test
End Sub
Естественно, что в общем программном модуле должен находиться макрос "Test".
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 19.12.2008, 13:23   #5
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
По умолчанию

Я, извиняюсь, но не очень понимаю, что значит в модуль нужного листа?
Maxx вне форума
Старый 19.12.2008, 13:51   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Зайдите в VBE, откройте проект с именем Вашего файла, выберите нужный лист и вот туда и вставить. (см. пример во вложении).
Вложения
Тип файла: rar Книга1.rar (6.6 Кб, 185 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 19.12.2008, 14:34   #7
Maxx
Форумчанин
 
Аватар для Maxx
 
Регистрация: 29.10.2008
Сообщений: 294
По умолчанию

Понял. Огромное спасибо за помощь!!!

Я просто даже и не предполагал, что можно втавлять коды на лист. КРУТО! :-)
Maxx вне форума
Старый 15.04.2009, 15:40   #8
vrb
 
Регистрация: 15.04.2009
Сообщений: 3
По умолчанию

Я только что зарегестрировался.
как мне скачать:

Зайдите в VBE, откройте проект с именем Вашего файла, выберите нужный лист и вот туда и вставить. (см. пример во вложении).
Вложения Книга1.rar (6.6 Кбайт, 19 просмотров)
vrb вне форума
Старый 15.04.2009, 15:47   #9
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
Сообщение от vrb Посмотреть сообщение
Я только что зарегестрировался.
как мне скачать:
А что если попробовать просто щелкнуть на Книга1.rar?
EducatedFool вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как запустить программу? egordark Общие вопросы .NET 4 18.11.2008 18:17
Как запустить макрос при изменении другой книги Excel? Град Microsoft Office Excel 12 10.06.2008 10:01
как заставить работать макрос при определенном значении ячейки? Град Microsoft Office Excel 5 30.05.2008 16:06
Как разделить число и текст в одной ячейки на две ячейки. neboskreb Microsoft Office Excel 2 15.04.2008 19:39
Как запустить программу Vadik(R) Паскаль, Turbo Pascal, PascalABC.NET 1 10.03.2008 16:04