Автозапуск при открытии файла - Макросы в Excel
Многие вещи хотелось бы запускать автоматически при открытии файла: вызов формы, добавление кнопок на панель инструментов, создание резервной копии открытого файла и многое другое. Запустить всё что угодно при открытии файла можно, задав название макроса auto_open, например:
Sub auto_open()
MsgBox(“Hello, World!”)
End sub
Если вы хотите запустить один макрос из другого макроса, вам нужно просто написать его название. Например запустим макрос с названием another_macro
Sub run_macro()
another_macro
End Sub
Часто используемые макросы должны быть всегда под рукой. Добавить на ленту или панель быстрого доступа кнопку запуска конкретного макроса – самый логичный и простой способ решения проблемы. Добавить кнопку вручную на панель доступа можно в настройках панели быстрого доступа. Мы же рассмотрим, как автоматически добавить кнопку запуска макроса на ленту. Такой код может запускаться, например, при открытии файла с макросом и особенно полезен при предоставлении макросов другим пользователям – не требуется дополнительных действий, а доступ к макросу прост и понятен.
Итак, чтоб добавить кнопку, нужен следующий код:
Application.CommandBars.Add(Name:=" my_cmd_bar ", Position:=msoBarTop, Temporary:=True).Visible = True
Set button_01 = Application.CommandBars("my_cmd_bar").Controls.Add(Type:=msoControlButton)
With button_01
.Tag = "tag_name"
.OnAction = "macro_name"
.FaceId = 602
.Caption = "подпись к кнопке"
EndWith
Иконки можно выбрать вот тут .