Hallo liebes VBA-Forum!
Ich habe ein Makro gebaut, das auch tut was es soll. Jedoch frage ich mich, ob es nicht vielleicht "schöner", sauberer geht.
Es geht darum, in einer Datei, die viele technische Namen enthält (und für Endbenutzer nicht lesbar/entzifferbar), durch ein Makro die Überschriften zu lesbaren Namen zu ändern (Technischer Name z.B. "GHSD75_883PH" = "Anrede").
So habe ich es gelöst:
Variablen deklarieren (begriffe, w As Byte, i, zelle As Range)
For schleife (For i = 0 to 150)
ein Array für alle technischen Namen (das Array ist sehr sehr lang, man hat nicht wirklich einen Durchblick und sollte sich das ein dritter angucken, würde derjenige darauf vermutlich gar nichts erkennen).
For schleife (w = 0 to 65)
danach
If Application.CountIf(ActiveSheet.UsedRange, begriffe(w)) > 0 Then
Set zelle = ActiveSheet.UsedRange.Find(begriffe(w))
If w = 0 Then
zelle = "Name"
w = w + 1
ElseIf w = 1 Then
zelle = "Anrede"
w = w + 1
ElseIf w = 2 Then
zelle = "Titel"
w = w + 1
Und diese Elseif's gehen weiter bis zum Eintrag w = 61! Also auch sehr lang.
Danach werden alle If's und For's geschlossen, Next w und Next i und das wars auch schon.
Also wie gesagt, es funktioniert, aber ich würde gern eine Lösung haben, die sich leichter erweitern lässt und auch von dritten verständlich ist.
Ich hoffe es kann jemand helfen.
Liebe Grüße
Oliver
|