Irgendwie finde ich dieses "Hinundherverknüpfenvonunits" sagen wir mal suboptimal.
Schonmal was von TActionlist gehört?
Wenn z. B. diverse Aufgaben, die per Button, Menü, ShortCut ... gesteuert werden sollen, an einer zentralen Stelle versammelt werden müssen / sinnvollerweise sollten, dann kann man dafür z. B. ein Datenmodul nehmen und das mit 'ner TActionList "bestücken". Für jede Aufgabe wird der TActionList eine TAction spendiert und in deren Ereignisroutine die entsprechende Aufgabe erledigt.
Buttons, Menü, ... haben u. a. eine Eigenschaft Action. Dieser kann man dann die zugehörige Action aus der TActionList des Datenmoduls zuweisen.
Dies ist (für meine Begriffe) deutlich einfacher zu implementieren und deutlich lesbarer, als eine (mehr oder weniger große) Unmenge von "kreuzweisen" Uses auf Unit1, Unit2, ... (und den ggfls. vom Kompiler geworfenen Fehlermeldungen, weil er das nicht mehr aufgelöst bekommt) und dann im Quelltext das Ansprechen der jeweiligen, globalen Formular-...-variabeln.
Aber: Nur so als Idee für einen anderen Lösungsansatz für das bestehende Problem gedacht.
Und: Das mit dem Datenmodul funktioniert auch noch, wenn man es in unterschiedlichen Programmen nutzen möchte.
Alles, was irgendwie zentral, wiederholt in unterschiedlichen Zusammenhängen, ... benötigt wird, bekommt halt Zugriff auf das Datenmodul und die entsprechenden Steuerelemente werden einmal mit den entsprechenden Actions verbunden und gut iss.
Und: Natürlich gibt es für derartige Problemstellungen unterschiedliche Lösungsansätze, mindestens soviele, wie Wege nach Rom