VBA - вызов подпрограммы с использованием конкатенации строк - PullRequest
0 голосов
/ 14 марта 2019

возможно ли вызвать подпрограмму в VBA, используя объединение строк? Например

Sub Call_This_2019()
   ' do something
end sub

Sub From_this()
   Call ("Call_This_" + str(2019))
Sub

Мне не повезло с использованием этого подхода.

1 Ответ

0 голосов
/ 14 марта 2019

Я погуглил 'vba, вызывающую динамическую подпрограмму', и Я нашел это в http://www.vbaexpress.com/forum/showthread.php?36844-Solved-Dynamic-Procedure-call

Sub Call_This_2019()
   ' do something
   MsgBox ("Got here")
End Sub

Sub From_this()
    Dim theCallee As String
    theCallee = "Call_This_" & LTrim(Str(2019)) ' LTrim removes leading blank
    'Call theCallee         ' Syntax error
    'Call Eval(theCallee)   ' 2766 no Application object
    Application.Run theCallee
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...