Хорошо, поэтому, прочитав вопрос правильно, я попробую еще раз ...
Итак, чтобы сформулировать проблему:
вам нужна подпрограмма, написанная в надстройке, которая при вызовеиз vba в другой книге можно выяснить (помимо прочего), какая книга содержит vba, которая сделала вызов, без необходимости явно передавать эту информацию.
Как указано, это невозможно (это аналогичный вопросдоступ к стеку вызовов из кода: что, насколько мне известно, невозможно)
Однако вы можете почти получить то, что хотите, вот так
Объявите свою функцию журнала следующим образом:
Sub MyLogger(wb as Workbook, LogText as String)
Dim CallerName as String
CallerName = wb.name
' your code...
End Sub
Тогда везде, где вы вызываете подпрограмму, используйте
MyLogger ThisWorkbook, "Log Text"
Не так хорошо, как ничего не передавать, но, по крайней мере, всегда одно и то же