KOT Пользователь Сообщений: 68 |
В книге несколько макросов, на листе несколько кнопок. Кнопки из меню «Формы». Есть ли возможность узнать какая кнопка за что отвечает? Искал поиском на форуме и не нашел. |
а просто потыкать? но вообще у кнопок есть свойство onaction.. |
|
Зависит от кнопок. слэн, просто «потыкать» мне, лично, не нравится. Я предпочитаю сначала прочитать код, а потом запускать, уже понимая, что он должен делать |
|
KOT Пользователь Сообщений: 68 |
Правая кнопка помогла. Я и раньше ей пользовался для назначения макроса, но не обращал внимания что в верхнем окне указывается КАКОЙ макрос ей УЖЕ назначен. Спасибо. |
{quote}{login=Лузер™}{date=10.07.2008 12:35}{thema=}{post}Зависит от кнопок. слэн, просто «потыкать» мне, лично, не нравится. Я предпочитаю сначала прочитать код, а потом запускать, уже понимая, что он должен делать{/post}{/quote} да, я сам часто страдаю от моего подхода, но перебороть себя не могу :)) |
|
{quote}{login=}{date=10.07.2008 12:53}{thema=Re: }{post}{quote}{login=Лузер™}{date=10.07.2008 12:35}{thema=}{post}Зависит от кнопок. слэн, просто «потыкать» мне, лично, не нравится. Я предпочитаю сначала прочитать код, а потом запускать, уже понимая, что он должен делать{/post}{/quote} да, я сам часто страдаю от моего подхода, но перебороть себя не могу :)){/post}{/quote}Кнопкозависимость? |
|
Igor67 Пользователь Сообщений: 3726 |
А может черта характера — действие опережает мысль, или просто сила привычки Есть кнопка — надо нажать… |
русский менталитет — сначала сделать, а потом думать. вот вы покупая что-нибудь из техники (телевизор, двд, камеру), сначала читаете инструкцию или сначала все-таки пробуете включить, запустить и т.п.?? |
|
Igor67 Пользователь Сообщений: 3726 |
#9 10.07.2008 19:39:28 Про русский менталитет: |
Добрый вечер, уважаемыезнатоки. Подскажите, пожалуйста, как посмотреть код, назначенный элементу управления-кнопке, макросов в данной книге довольно много по модулям искать трудновато, а нужно внести некоторые изменения
Не торопись, и все успеешь намного быстрее
Если это кнопка из элементов управления, то достаточно заглянуть в модуль листа и найти событие CommandButton1_Click(). При включенном конфигураторе (первая кнопочка на ПИ «Элементы управления»), в свойствах кнопки можно подсмотреть её имя или, опять же, дважды кликнув по кнопке, попасть в модуль листа прямо на нужную процедуру.
Если макрос подвешен на кнопку из форм, то ПКМ → Назначить макрос. В строке «имя макроса» будет указан назначенный.
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли
Большое спасибо. Исчерпывающий ответ
Не торопись, и все успеешь намного быстрее
Если кнопок из форм несколько:
Public Sub ww()
Dim sp As Shape
For Each sp In ActiveSheet.Shapes
Debug.Print sp.OnAction
Next
End Sub
Я, как всегда, чертовски адекватен… Email: pilipnikop@yandex.ua WM Z206653985942, R334086032478, U238399322728, E332314026771
I’m working on a spread sheet that someone else created and am having trouble in identifying which macros are assigned to the different objects. When I right click to :assign», it doesn’t tell me what is already assigned. Is there a way to find out?
asked Feb 5, 2014 at 1:13
1
When you right click and select Assign Macro
it should have the macro name already entered in the cell at the top, above the list of available macros. Alternatively clicking Edit
should take you to the code. This works for Excel 2007 — you don’t stipulate which you are using.
As a last resort, assuming you don’t have masses and masses of macros, go to the VBE and put a break (click in the left margin to make it highlighted red) on the first line of each Sub/ Macro, then when you click the object it will take you to the VBE and highlight the line it stopped and thus the macro assigned.
answered Feb 5, 2014 at 1:58
Simon1979Simon1979
2,1001 gold badge12 silver badges14 bronze badges
If the objects the macro assigned to is grouped, excel doesn’t show the macro assigned. Ungrouping objects will allow you to see which individual item actually has the macro assigned.
answered Feb 5, 2014 at 2:04
SilenxorSilenxor
2362 silver badges5 bronze badges
Посмотреть макрос за кнопкой |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Макрос и средства VBA находятся на вкладке Разработчик, которая по умолчанию скрыта.
Прежде всего нужно включить его. Дополнительные сведения см. в статье Показ вкладки «Разработчик».
Добавление кнопки (управление формы)
-
На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить, а затем в группе Элементы управления формы нажмитекнопку
.
-
Щелкните на листе место, где должен быть расположен левый верхний угол кнопки. Появится всплывающее окно Назначение макроса.
-
Назначьте кнопке макрос и нажмите кнопку ОК.
-
Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.
Добавление кнопки (ActiveX управления)
-
На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить, а затем вгруппе Элементы управления ActiveX нажмите кнопку
.
-
Щелкните на том месте, где должен отображаться левый верхний угол кнопки.
-
В группе Элементы управления нажмите кнопку Код представления. При этом Visual Basic редактора. Убедитесь, что в списке справа выбрано нажатие кнопки. При нажатии кнопки CommandButton1_Click процедуры (см. рисунок ниже) запускаются эти два макроса: SelectC15 и HelloMessage.
-
В подпроцеду для кнопки сделайте следующее:
-
Введите имя существующего макроса в книге. Макрос можно найти, щелкнув Макрос в группе Код. С помощью кнопки можно запускать несколько макроса, вводя их имена в отдельных строках подпроцесса.
-
При необходимости добавьте собственный код VBA.
-
-
Закроем Visual Basic редактора и нажмите кнопку Режим конструктора
режим конструктора, чтобы отключить режим конструктора.
-
Чтобы запустить код VBA, который теперь является частью кнопки, нажмите кнопку ActiveX, которую вы только что создали.
-
Чтобы изменить элемент ActiveX, убедитесь, что выбран режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора.
-
Чтобы задать свойства кнопки, на вкладке Разработчик в группе Элементы управления нажмите кнопку Свойства
. Можно также щелкнуть правой кнопкой мыши кнопку и щелкнуть свойства .
Примечание: Перед тем как нажать кнопку Свойства, выделите объект, свойства которого требуется просмотреть или изменить.
Появится поле Свойства. Для получения дополнительных сведений о каждом свойстве выберите свойство и нажмите клавишу F1, чтобы отобразить соответствующий раздел справка по Visual Basic. Можно также ввести имя свойства в поле Поиск справки Visual Basic. В следующей таблице 2010 2010 2016 2016 2016 2016 201
Описание параметра |
Необходимое свойство |
---|---|
Общие |
|
Загружает ли его при открытом книге. (Игнорируется для ActiveX элементов управления.) |
AutoLoad (Excel) |
Может ли он получать фокус и отвечать на события, созданные пользователем. |
Enabled (форма) |
Можно ли изменять элемент управления |
Locked (форма) |
Имя элемента управления |
Name (форма) |
Способ привязки элемента управления к расположенным под ним ячейкам (не закреплен, можно перемещать, но нельзя изменять размер, можно перемещать и изменять размер) |
Placement (Excel) |
Можно ли выводить элемент управления на печать |
PrintObject (Excel) |
Является ли элемент управления видимым или скрытым |
Visible (форма) |
Текст |
|
Атрибуты шрифта (полужирный, курсив, размер, зачеркивание, подчеркивание и насыщенность) |
Bold, Italic, Size, StrikeThrough, Underline, Weight (форма) |
Поясняющий текст элемента управления, определяющий или описывающий его |
Caption (форма) |
Будет ли содержимое элемента управления переноситься по словам в конце строки |
WordWrap (форма) |
Размер и положение |
|
Будет ли размер элемента управления изменяться автоматически для отображения всего содержимого |
AutoSize (форма) |
Высота или ширина в пунктах |
Height, Width (форма) |
Расстояние от элемента управления до левого или верхнего края листа |
Left, Top (форма) |
Форматирование |
|
Цвет фона |
BackColor (форма) |
Стиль фона (прозрачный или непрозрачный) |
BackStyle (форма) |
Цвет переднего плана |
ForeColor (форма) |
Наличие тени элемента управления |
Shadow (Excel) |
Изображение |
|
Точечный рисунок, отображаемый в элементе управления |
Picture (форма) |
Положение рисунка относительно его заголовка (слева, сверху, справа и так далее) |
PicturePosition (форма) |
Клавиатура и мышь |
|
Сочетание клавиш для элемента управления |
Accelerator (форма) |
Настраиваемый значок мыши |
MouseIcon (форма) |
Тип указателя, отображаемого при наведите указатель мыши на определенный объект (стандартный, стрелка, I-указатель и так далее). |
MousePointer (форма) |
Будет ли фокус при щелчке. |
TakeFocusOnClick (форма) |
Макрос и средства VBA находятся на вкладке «Разработчик», которая по умолчанию скрыта, поэтому сначала нужно включить ее.
-
Перейдите в Excel > параметры…> ленты & панель инструментов.
-
В категории Настроить ленту в списке Основные вкладки установите флажок Разработчик, а затем нажмите кнопку Сохранить.
Добавление кнопки (управление формы)
Сделайте следующее:
-
На вкладке Разработчик нажмите кнопку
.
-
Щелкните на листе место, где должен быть расположен левый верхний угол кнопки. Появится всплывающее окно Назначение макроса.
Примечание: Если кнопка уже вставлена, щелкните ее правой кнопкой мыши и выберите назначить макрос.
-
Назначьте кнопке макрос и нажмите кнопку ОК.
-
Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.
Добавление кнопки (Visual Basic управления)
-
На вкладке Разработчик нажмите кнопку
.
-
Щелкните место на том месте, где должен отображаться левый верхний угол кнопки.
Примечание: Если кнопка уже вставлена, щелкните ее правой кнопкой мыши и выберите назначить макрос.
-
В диалоговом окне Назначение макроса выберите Новый, который откроет редактор Visual Basic(VBE)в области со следующим кодом:
Sub ButtonX_Click() End Sub
-
В подпроцеду для кнопки между строками Sub и End Sub сделайте следующее:
-
Введите имя существующего макроса в книге. Вы можете запускать несколько макроса с помощью кнопки, введя их имена в отдельных строках внутри под процедуры.
-
Добавьте собственный код VBA.
-
-
Нажмите кнопку Режим
режим конструктора, чтобы режим конструктора отключен, а затем закроем Visual Basic редактора.
-
Чтобы изменить кнопку, щелкните ее правой кнопкой мыши ивыберите Visual Basic .
-
Чтобы задать свойства кнопки, щелкните ее правой кнопкой мыши и выберите форматирование.