Excel это не сложно
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
20.04.2024, 04:01:37

Войти
На форуме добавлена возможность подписки на RSS-ленты любого раздела форума. Подписаться можно, нажав на иконку RSS , расположенную левее наименования раздела.
33 242 Сообщений в 5 457 Тем от 6 758 Пользователей
Последний пользователь: Сергей2662
*
Перейти на сайт Хитрости Надстройка MulTEx Обучающие тренинги Наша группа ВКонтакте
Правила форума Начало Помощь Поиск Календарь Войти Регистрация Выйти
+  Excel это не сложно
|-+  Основные форумы
| |-+  Вопросы по Excel и VBA
| | |-+  Получить имя процедуры, выполняемой сейчас (Application.Caller)
Страниц: [1]   Вниз
Печать
Автор Тема: Получить имя процедуры, выполняемой сейчас (Application.Caller)  (Прочитано 2220 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Valetnina
Постоялец
***

Репутация: +2/-0
Офлайн Офлайн

Сообщений: 153



Просмотр профиля WWW E-mail
« : 30.11.2020, 11:39:35 »

Здравствуйте.
Кто знает, как определить процедуру, выполняемую в данный момент ?
Не первый год интересуюсь. Мне известны некоторые «хардкор» способы узнать имя выполняемой процедуры, они требуют специальных строк кода в теле самой процедуры.
Но вот, показалось, что это возможно с помощью Application.Caller.
В примере с онлайн справочника Майкрософт (https://docs.microsoft.com/ru-ru/office/vba/api/excel.application.caller) особое внимание вызвала строка
Код: (vb)
v = Application.Caller.Address 
 Case "String"

Хотя там речь, похоже, идет об имени файла. А вот как тут подобраться к имени процедуры ?
(в приложенном файла кнопка, вызывающая строки кода из примера, для удобства)
« Последнее редактирование: 30.11.2020, 12:17:54 от Valetnina » Записан
Дмитрий Щербаков(The_Prist)
Администратор
Ветеран
*****

Репутация: +485/-0
Офлайн Офлайн

Сообщений: 5 831



Просмотр профиля WWW
« Ответ #1 : 30.11.2020, 12:49:57 »

показалось, что это возможно с помощью Application.Caller
показалось Улыбка Вот здесь я чуть более подробно описывал возможности и способности application.caller: Кто вызвал функцию или процедуру?
Записан

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Пункты приёма Спасибов:    -41001332272872  -R298726502453
Valetnina
Постоялец
***

Репутация: +2/-0
Офлайн Офлайн

Сообщений: 153



Просмотр профиля WWW E-mail
« Ответ #2 : 30.11.2020, 17:09:23 »

Прочла Вашу статью "Кто вызвал функцию или процедуру". Как всегда интересно, спасибо.
Записан
Страниц: [1]   Вверх
Печать
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Яндекс.Метрика Рейтинг@Mail.ru