Du kannst auch die Variablen in ein 2D-Array packen, um sie nach Fenstern (oder Subroutinen etc.) zu sortieren. Wobei die in der Enumeration verwendeten Variablen trotzdem eineindeutig sein müssen - es sei denn, du verwendest z.B. $OK immer an derselben Position im Array bei den einzelnen Dimensionen.
Würde ich aber von abraten. Ein kurzes Präfix vereinfacht die Zuordnung.
Mal ein Bsp., wie es aussehen könnte:
Spoiler anzeigen
; === Enumeration der verschiedenen Fenster (Main, Sub1, Sub2 [, etc.])
Enum $main, $sub1, $sub2, $iCol
; === Enumeration Variablen für die einzelnen Fenster
; === Main
Enum $M_bla, $M_blub, $M_blob, $iRowMain
; === Sub1
Enum $1_bla, $1_blub, $1_blob, $1_aha, $iRowS1
; === Sub2
Enum $2_bla, $2_blub, $2_blob, $iRowS2
; === max. Zeilenzahl(Variablen des Fensters) ermitteln
Local $iMax = 0
If $iRowMain > $iMax Then $iMax = $iRowMain
If $iRowS1 > $iMax Then $iMax = $iRowS1
If $iRowS2 > $iMax Then $iMax = $iRowS2
; === ein Globales Array erstellen
Global $aVar[$iMax][$iCol] ; [Variable][Fenster]
; === Zugriff wäre dann so:
$aVar[$M_bla][$main] = ....
$aVar[$1_bla][$sub1] = ....
$aVar[$2_bla][$sub2] = ....