Executing a shortcode from a “normal” text/hyperlink

Yes and no

I created a shortcode named foo:

add_shortcode( 'foo', 'fooshort' );
function fooshort( $atts ) {
    return "https://google.com";
}

Then put this in a post:

test [foo]

The result:

test https://google.com

So if I take your question literally, yes, you can put shortcodes in anchor attributes. But the shortcode has no idea it’s in an attribute. The shortcode could generate output that completely breaks the tag, and maybe even the page from that point onwards.

However

Shortcodes aren’t magic tokens, they literally just get replaced with their output, and they have zero awareness of their context. That hasn’t stopped page builders abusing them to imply they can do more. They’re just substitutions, a way to embed something in post content that can’t be put directly in the content, like an embed code, or an iframe, etc

Because of this, you can’t apply any kind of logic to them as far as functionality goes. It’s highly unlikely that your hyperlink will behave the same way a button does just by putting the shortcode in the href. However much plugin builders might suggest or imply it, there’s no framework or system that adapts. Perhaps blocks in the block editor might be able to do that, but not shortcodes.

Shortcodes are dumb, they’re just substitutions of shortcodes for content. Perhaps your plugin uses some logic that works off of the URL rather than something else, fingers crossed. Eitherway you’re better off asking in the Elementor community for Elementor problems.