Check if a parameter has been passed by "Execute Macro" or not

I think I understand. The %TriggerValue% value is not "erased" when a macro is called. Indeed you are right, it can inherit its value from the PREVIOUS macro or mechanism that called it.

I think you will need to convert your macro to a subroutine trigger, and in that case you can determine what you want to determine, because then you can avoid this mechanism. I remember a long thread about this topic years ago.

Alternately, you can just check if the TriggerValue token "looks like" a hotkey or not.