Macros not showing up in the run macro menu

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-12 12:31:44

问题


I started learning VBA and I don't understand why some macros copy-pasted from the internet do not show up in the run macro menu (Alt-F8).

Below there are 2 macros, but only the second one is showing. Why? And how do I fix it?

Sub Test1(ByVal Target As Hyperlink)

    '...

End Sub

Sub Test2()

    '...

End Sub


回答1:


Macros with arguments are not available in Macros list because they cannot be run alone instead they are called by another macro by passing the required arguments.




回答2:


If a Sub declaration contains parameters it will not show there.




回答3:


You cannot call macros that have parameters as you are describing. If you need to have a parameter, you can take it out and then have the user input the value.

Sub Test1()        
    Dim hyperLink As String
    hyperLink = InputBox("Please input hyperlink", "My Parameter")

    '...

End Sub

Alternatively, if the hyperlink is in your document, grab the value from your document instead.




回答4:


Here are my 5 cents - if you give an optional parameter, you will be able to call the sub routine, even if it will not be shown among the ones which you can chose from.

Write aaaaTestMe and press Run.

Public Sub aaaaTestMe(Optional lngA As Long = 8)
    Debug.Print lngA
End Sub


来源:https://stackoverflow.com/questions/45922417/macros-not-showing-up-in-the-run-macro-menu

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!