Как часто вы ловите ошибки в VBA?
А как часто вам приходится пытаться понять откуда ноги растут?
Если макрос состоит из одной процедуры, это немного другая история...
Но вот если у вас полноценный стек вызовов, когда:
Main() -> NestedSub1 -> NestedFunc -> NestedSub2 ... -> NestedSubN
как отловить, в каком произошла ошибка?
Окей, вы скажите "Поставим On Error GoTo Catch и в Catch: Debug.Print "Function name"", да?
А если эту функцию вызывают несколько разных Sub/Function...