Soeben habe ich mir das mal in 5min Ruhe genauer angesehen (habe das selbst noch nie gemacht)
und bin positiv überrascht: Man kann das auch "ohne Programm und Programmierkenntnisse" machen 😊
Allerdings sind Makros fehleranfällig (immer) und die Registerkarte kann nicht auf "das Makro läuft" reagieren,
aber auf Systemvariablen - und Werte von Systemvariablen kannst du ja mit dem Makro setzen
und auf diese können KontextabhängigeRegisterkarten reagieren.
Am Makro Anfang setzt du dann einen Variablenwert, die Registerkarte öffnet sich
und in einem voll-definiertes Makro (in dem also jede Eingabe bis zur allerletzten geregelt wird)
kann dann am Ende der Variablen Wert wieder geändert werden = Registerkarte verschwindet wieder.
Allerdings sind Makros ja fehleranfällig = Man kann diese einfach abbrechen oder der gewählte Befehl macht es aufgrund einer unerwarteten Eingabe.
In dem Fall bricht das Makro ab und kann den Variablenwert nicht mehr umstellen,
das bedeutet die Registerkarte würde weiterhin eingeblendet bleiben 😕
Für Nicht-LT User würde ich daher etwas LISP einsetzen, die Umsetzung Makro -> Lisp(Command ist simple
und eine Error-Routine welche dir die Sache mit der Variable regelt im Falle eines Abbruchs, das kann man
per copy&paste einfach verwenden.
Ansonsten wäre die "BringEsInOrdnung" Variante das Makro einfach noch einmal ordentlich auszuführen
oder einen Extraknopf der das macht - oder du weißt es auswendig und tippst entsprechendes im CLI ein.
_ _ _
Also: Wie bereits vermutet gibt es keine GUI Möglichkeit dafür,
jedoch ist es für den Anwender durchaus möglich dies zu erstellen - selbst ohne explizites Programmierwissen.
siehe hier, ein Makro was einfach als Beispiel zum erstellen eines Kreises per Zentrum+Radius gut ist,
aber es natürlich auch alles andere hätte sein können: Mit wird in der Zeit meines Makros (m)eine andere Registerkarte eingeblendet.

Details?
Das alles ist keine Raketenwissenschaft (Ich brauchte Google um auf den richtigen Dateinamen zu kommen und insgesamt 10min bis ich mein funktionierendes Beispiel zusammengeklöppelt atte),
aber da hier "alle möglichen User" mitlesen und recht schnell am wild testen sind - lasse ich es vorerst bei den allgemeinen Informationen.