Первым параметром надо передать объект, в котором находится вызываемая функция. Если процедуры находятся в том же самом модуле, откуда эти процедуры вызывается, то первым параметром должно стоять Me.
Ну не знаю... В моем примере процедура находилась в другом модуле (MyProject.MyModule). С другой стороны, я пробовал на простом примере, что если даже процедура находится в текущем модуле, то обратиться к ней можно не только написав ее имя например Call ProcName, но и написав полный ее путь: Call ProjName.ModuleName.ProcName.
Я попробовал использовать "Me" : Call Interaction.CallByName(Me, MyFunction, VbMethod) ... на что VBA мне ответило : "Invalid use of Me keyword". Так что пока тупик ...
П.С. Спасибо всем за советы и идеи, но проверять их работоспособность оперативно не получается, так как я не знаю половины используемых в них операторов
Приходится подолгу разбираться. Поэтому отвечаю "небыстро"