Я очищаю старую рабочую книгу, заполненную бесполезными макросами. Рабочая книга очень большая, в ней много кнопок, и в ней нет комментариев. Я уверен, что на некоторые макросы ссылаются где-то кнопки, а некоторые устарели.

Есть ли способ проверить, есть ли ссылка на макрос в рабочей книге, например, кнопками или фигурами? Я не говорю о ссылках между подпрограммами, я уже использовал ctrl+f, чтобы найти ссылки между подпрограммами / функциями.

Вся помощь, которую я нахожу в Интернете, связана с выяснением того, какой макрос использует конкретная кнопка. Моя проблема обратная.

1 ответ1

2

Вы можете получить список форм и то, что они называют довольно легко

Sub listem()
Dim s As Shape
For Each s In ActiveSheet.Shapes
    Debug.Print s.Name & ", " & s.OnAction
Next
End Sub

Затем вы можете взять список всех ваших функций и выполнить сопоставление, но я не думаю, что можно попросить код сообщить вам его application.caller, если вы не вызовете его с помощью вызывающей стороны.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .