Auf Excel habe ich eine Liste von n Eingänge. Von Name 1 bis Name n. Diese haben einen dynamisch definierten Namen von "Name_1" bis "Name_n" Ich möchte folgendes tun:VBA dynamisch auf dynamischen Namen formatieren
Wenn die Kontrolle ja ist, dann sind alle von ihnen verfügbar, wenn die Kontrolle nein ist die von 3 bis n sind deaktiviert (in dem Sinne, dass ihre Hintergrundfarbe grau ist). Ich kann keine bedingte Formatierung verwenden, da ich nicht weiß, wie lange die Reihe von Eingaben sein wird.
Der Teil, um zu überprüfen, ob die Kontrolle ja oder nein ist, ist in Ordnung, so werde ich nur diejenige betrachten, wo ich überprüft habe, dass die Kontrolle nein ist.
Ich möchte so etwas wie dies tun:
if control=no Then
for name in name_3,...,name_n '(since I do not know how much n is, I would loop until I get an error that name_(n+1) does not exist)
Range("Name_3").Interior.Color=gray
Aber vor allem habe ich Schwierigkeiten in (a) über den definierten Namen Looping, bis ich einen Fehler (b) Format der Zelle erhalten auf seinen definierten Namen
Sie können sich wahrscheinlich nur um die bedingte Formatierung es größer zu einem Bereich der Anwendung verwenden, um zu überprüfen, als die maximal mögliche Anzahl von Namen; und Verwenden von Code, der beinhaltet, dass der Name existiert. Und für VBA können Sie wahrscheinlich eine 'For ... each'-Schleife verwenden. –
Können Sie es genauer zeigen? – Thegamer23
Was ist mit der bedingten Formatierung, die Sie nicht verstehen? –