Во-первых, я думаю, вы имеете в виду:
on error goto label
И нет, вы не можете передавать переменные с помощью команды goto.Тем не менее, вы можете проверить Err.Description для получения подробной информации, и если вы поднимаете свои собственные ошибки, вы можете сделать это:
' Raise a custom error.
Err.Raise Number:=vbObjectError + 1000, _
Source:="TestRaiseCustomError", _
Description:="My custom error description."
Так что, если вы поднимаете свою собственную ошибку, вы можете установить Source наполе, вызвавшее проблему.
См. Используйте метод повышения объекта Err для вызова пользовательских ошибок раздел эта ссылка для получения дополнительной информации.