Excel Bedingte Formatierung wenn Datum xx.xx.xxxx zweite Jahr 31.12 dann
Hallo und guten Abend zusammen,
ich habe eine Frage an die Excel Profis unter euch. Ich benötige für die Bedingte Formation eine Formel die wenn in Zelle ein Datum xx.xx.2017 eingetragen wird, dann soll Zelle mit dem Datum beim erreichen des Datum 31.12.2018 rot werden. Das ist ja eigentlich einfach, dass schwierige ist aber wenn das Datum xx.xx.2018 eingetragen wird soll die Zell beim erreichen 31.12.2019 rot werden.
Egal welches Datum eingetragen wird, immer wenn das Datum 31.12. des folge Jahr erreicht ist soll die Zelle rot werden.
Ich hoffe mir kann jemand weiter helfen
ich habe eine Frage an die Excel Profis unter euch. Ich benötige für die Bedingte Formation eine Formel die wenn in Zelle ein Datum xx.xx.2017 eingetragen wird, dann soll Zelle mit dem Datum beim erreichen des Datum 31.12.2018 rot werden. Das ist ja eigentlich einfach, dass schwierige ist aber wenn das Datum xx.xx.2018 eingetragen wird soll die Zell beim erreichen 31.12.2019 rot werden.
Egal welches Datum eingetragen wird, immer wenn das Datum 31.12. des folge Jahr erreicht ist soll die Zelle rot werden.
Ich hoffe mir kann jemand weiter helfen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 356169
Url: https://administrator.de/contentid/356169
Ausgedruckt am: 22.11.2024 um 01:11 Uhr
50 Kommentare
Neuester Kommentar
Wenn ReferenzDatum in A1 steht und das andere in B1
=WENN(B1>=DATUM(JAHR(A1)+1;12;31);WAHR())
Hehe
@Knuefi
Meinst du nicht, dass da wiederum eine Formel sinnvoll wäre, die die Werte (statt die Farben) der Zellen prüft? Eine Verschachtelte WENN Bedingung oder eine einfache WENN Bedingung mit UND Verknüpfungen?
Steffen
@Knuefi
Meinst du nicht, dass da wiederum eine Formel sinnvoll wäre, die die Werte (statt die Farben) der Zellen prüft? Eine Verschachtelte WENN Bedingung oder eine einfache WENN Bedingung mit UND Verknüpfungen?
Steffen
@rubberman hat vollkommen Recht. Die Formel aus der bedingten Formatierung kombiniert mit WENN und UND.
Hallo Knuefi,
Wenn eine Zelle im Folgejahr rot werden soll, dann soll sie doch ein weiteres Jahr später nicht wieder grün werden?
Das bedeutet doch einfach, dass Du die Jahreszahl des eingetragenen Datums mit der aktuellen Jahreszahl vergleichen musst.
Das magische Datum (31.12.) steckt da ja von alleine drin.
Von erster Überlegung abgeleitet, frag nicht nach den Farben, sondern setz eine Formel, die die Inhalte abfragt.
Die Formel für H1 lautet:
Nur für die Lesbarkeit:
Gruß Frank
EDIT:
Sacht mal, geht's noch?
Ich tippe hier meine Antwort vor mich hin und in der Zwischenzeit erscheinen neue neue Kommentare.
Müsst Ihr morgen nicht arbeiten?
Marsch ins Bett!
EDIT2:
Die Formel hab ich in einem späteren Beitrag korrigiert, mit den richtigen Bedingungen, nochmal gepostet.
Zitat von @Knuefi:
Egal welches Datum eingetragen wird, immer wenn das Datum 31.12. des folge Jahr erreicht ist soll die Zelle rot werden.
Hast Du die Aufgabe unpräziese vormuliert oder erkenne ich die Schwierigkeit nicht?Egal welches Datum eingetragen wird, immer wenn das Datum 31.12. des folge Jahr erreicht ist soll die Zelle rot werden.
Wenn eine Zelle im Folgejahr rot werden soll, dann soll sie doch ein weiteres Jahr später nicht wieder grün werden?
Das bedeutet doch einfach, dass Du die Jahreszahl des eingetragenen Datums mit der aktuellen Jahreszahl vergleichen musst.
Das magische Datum (31.12.) steckt da ja von alleine drin.
=wenn(JAHR(HEUTE())>JAHR(A1);"Fehler";"OK")
Zitat von @Knuefi:
Welche Formel benötige ich damit wenn Zellen A1 bis G1 das Datum grün ist, dann in Zelle H1 OK, umgekehrt wenn eine oder mehre Zellen (Datum) von A1 bis G1 rot, dann Fehler.
Welche Formel benötige ich damit wenn Zellen A1 bis G1 das Datum grün ist, dann in Zelle H1 OK, umgekehrt wenn eine oder mehre Zellen (Datum) von A1 bis G1 rot, dann Fehler.
Von erster Überlegung abgeleitet, frag nicht nach den Farben, sondern setz eine Formel, die die Inhalte abfragt.
Die Formel für H1 lautet:
=WENN(ODER(JAHR(HEUTE())>JAHR(A1);JAHR(HEUTE())>JAHR(B1);JAHR(HEUTE())>JAHR(C1);JAHR(HEUTE())>JAHR(D1);JAHR(HEUTE())>JAHR(E1);JAHR(HEUTE())>JAHR(F1);JAHR(HEUTE())>JAHR(G1));"Fehler";"OK")
Nur für die Lesbarkeit:
=WENN
(
ODER
(
JAHR(HEUTE())>JAHR(A1);
JAHR(HEUTE())>JAHR(B1);
JAHR(HEUTE())>JAHR(C1);
JAHR(HEUTE())>JAHR(D1);
JAHR(HEUTE())>JAHR(E1);
JAHR(HEUTE())>JAHR(F1);
JAHR(HEUTE())>JAHR(G1)
)
;"Fehler"
;"OK"
)
Gruß Frank
EDIT:
Sacht mal, geht's noch?
Ich tippe hier meine Antwort vor mich hin und in der Zwischenzeit erscheinen neue neue Kommentare.
Müsst Ihr morgen nicht arbeiten?
Marsch ins Bett!
EDIT2:
Die Formel hab ich in einem späteren Beitrag korrigiert, mit den richtigen Bedingungen, nochmal gepostet.
Hallo Knuefi,
Gruß Frank
Zitat von @Pedant:
Wenn eine Zelle im Folgejahr rot werden soll, dann soll sie doch ein weiteres Jahr später nicht wieder grün werden?
das hätte ich gerne noch gewusst, bevor emeriks den Affen tötet.Wenn eine Zelle im Folgejahr rot werden soll, dann soll sie doch ein weiteres Jahr später nicht wieder grün werden?
Gruß Frank
Hallo Steffen,
Explizit steht das auch nirgends, implizit habe ich es aus zwei Sachen:
1.
Wenn das Verpasste einfach ist, aber das andere Verpasste das Schwierige ist, dann muss da doch in der Aufgabe was stecken, was es Schwierig macht.
2.
Die von anderen, geposteten Formeln enthielten alle ein
Ohne die Formeln nachgeturnt zu haben, machte mich das nachdenklich, warum sich für das Datum interessiert wird und nicht einfach nur gefragt wird, ob das fragliche Jahr kleiner ist als das aktuelle.
@Knuefi,
Ja, gerne
und ich gehe jetzt davon aus, dass was rot wird soll keine Formel jemals wieder grünen.
Gruß Frank
Explizit steht das auch nirgends, implizit habe ich es aus zwei Sachen:
1.
Zitat von @Knuefi:
wenn in Zelle ein Datum xx.xx.2017 eingetragen wird, dann soll Zelle mit dem Datum beim erreichen des Datum 31.12.2018 rot werden. Das ist ja eigentlich einfach, das Schwierige ist aber wenn das Datum xx.xx.2018 eingetragen wird soll die Zell beim erreichen 31.12.2019 rot werden.
Ich habe mal die beiden Stellen unterstrichen:wenn in Zelle ein Datum xx.xx.2017 eingetragen wird, dann soll Zelle mit dem Datum beim erreichen des Datum 31.12.2018 rot werden. Das ist ja eigentlich einfach, das Schwierige ist aber wenn das Datum xx.xx.2018 eingetragen wird soll die Zell beim erreichen 31.12.2019 rot werden.
Wenn das Verpasste einfach ist, aber das andere Verpasste das Schwierige ist, dann muss da doch in der Aufgabe was stecken, was es Schwierig macht.
2.
Die von anderen, geposteten Formeln enthielten alle ein
31
und ein 12
und gerne noch ein Jahr+1
.Ohne die Formeln nachgeturnt zu haben, machte mich das nachdenklich, warum sich für das Datum interessiert wird und nicht einfach nur gefragt wird, ob das fragliche Jahr kleiner ist als das aktuelle.
@Knuefi,
Ja, gerne
und ich gehe jetzt davon aus, dass was rot wird soll keine Formel jemals wieder grünen.
Gruß Frank
Hallo Steffen,
im Hellen betrachtet, stellt sich die Aufgabe tatsächlich etwas anders dar.
"Sonntag Abend" vs. "Montag Mittag", alias "Müdigkeit und Rotwein" vs. "weder noch"
Du hattest die Aufgabe ja schon mit UND gelöst.
Hier noch meine ODER-Variante in korrigierter Fassung:
Formel für Zelle H1:
Nur für die Lesbarkeit:
@Knuefi:
UND: sind ausnahmslos alle "grün" dann OK, sonst Fehler
ODER: ist auch nur eines "rot" dann Fehler, sonst OK
Der Ansatz ist der Gleiche, nur eben negiert.
Gruß Frank
im Hellen betrachtet, stellt sich die Aufgabe tatsächlich etwas anders dar.
"Sonntag Abend" vs. "Montag Mittag", alias "Müdigkeit und Rotwein" vs. "weder noch"
Du hattest die Aufgabe ja schon mit UND gelöst.
Hier noch meine ODER-Variante in korrigierter Fassung:
Formel für Zelle H1:
=WENN(ODER(HEUTE()>=DATUM(JAHR(A1)+1;12;31);HEUTE()>=DATUM(JAHR(B1)+1;12;31);HEUTE()>=DATUM(JAHR(C1)+1;12;31);HEUTE()>=DATUM(JAHR(D1)+1;12;31);HEUTE()>=DATUM(JAHR(E1)+1;12;31);HEUTE()>=DATUM(JAHR(F1)+1;12;31);HEUTE()>=DATUM(JAHR(G1)+1;12;31));"Fehler";"OK")
Nur für die Lesbarkeit:
=WENN
(
ODER
(
HEUTE()>=DATUM(JAHR(A1)+1;12;31);
HEUTE()>=DATUM(JAHR(B1)+1;12;31);
HEUTE()>=DATUM(JAHR(C1)+1;12;31);
HEUTE()>=DATUM(JAHR(D1)+1;12;31);
HEUTE()>=DATUM(JAHR(E1)+1;12;31);
HEUTE()>=DATUM(JAHR(F1)+1;12;31);
HEUTE()>=DATUM(JAHR(G1)+1;12;31)
)
;"Fehler"
;"OK"
)
@Knuefi:
UND: sind ausnahmslos alle "grün" dann OK, sonst Fehler
ODER: ist auch nur eines "rot" dann Fehler, sonst OK
Der Ansatz ist der Gleiche, nur eben negiert.
Gruß Frank
Hallo Knuefi,
ohne die Formel auf Funktion zu prüfen:
Das UND (wie auch das ODER) erwarten eine Aneinanderreihung von Werte, die als "wahr" oder falsch" ausgewertet werden können, um diese Aneinanderreihung insgesamt als ein resultierendes "wahr" oder "falsch" zusammenzufassen.
Das trifft zwar auf
Du kannst entweder die Wenn-Anweisung mit dem UND ergänzen oder eine verschachtelte Wenn-Anweisung erstellen.
Hier muss es dann aber für Deinen Zweck negiert sein, also:
oder
Hier ist das Dann-gleich-"Fehler" ersetzt durch eine untergeordnete Wenn-Abfrage:
Grundlagen
Trick
Das kann in machen Situationen verschachtelte Wenn-Abfragen ersetzen.
(Wenn nirgends
Tief verschachtelte Wenn-Abfragen sind fehleranfällig beim Schreiben und schwer zu lesen, und haben auch Grenzen.
Es waren mal 7 Ebenen, die möglich waren, vielleicht ginge mittlerweise auch mehr.
Den "Trick" habe ich hier nicht als relevante Alternative angefügt, sondern als Anregung Formeln zu verstehen und (aus)zunutzen.
Gruß Frank
EDIT:
Steffen war wieder schneller.
Ich schreib einfach ODER(zu langsam; zu viel; UND(zu langsam; zu viel))
ohne die Formel auf Funktion zu prüfen:
Das UND (wie auch das ODER) erwarten eine Aneinanderreihung von Werte, die als "wahr" oder falsch" ausgewertet werden können, um diese Aneinanderreihung insgesamt als ein resultierendes "wahr" oder "falsch" zusammenzufassen.
Das trifft zwar auf
C1="Z"
zu, aber nicht auf die statischen Texte "Fehler"
und "OK"
.Du kannst entweder die Wenn-Anweisung mit dem UND ergänzen oder eine verschachtelte Wenn-Anweisung erstellen.
=WENN(UND(C1<>"Z"; ODER(HEUTE()>=DATUM(JAHR(D1);12;31);HEUTE()>=DATUM(JAHR(E1);12;31);HEUTE()>=DATUM(JAHR(F1);12;31));"Fehler";"OK")
C1<>"Z"
statt C1="Z"
oder
=WENN(ODER(HEUTE()>=DATUM(JAHR(D1);12;31);HEUTE()>=DATUM(JAHR(E1);12;31);HEUTE()>=DATUM(JAHR(F1);12;31));WENN(C1="Z";"OK";"Fehler");"OK")
WENN(C1="Z";"OK";"Fehler")
Grundlagen
UND(wahr; wahr; wahr)
=> wahr (alle müssen wahr sein)UND(wahr; falsch; wahr)
=> falschODER(falsch; falsch; falsch)
=> falschODER(falsch; falsch; wahr)
=> wahr (wenigstens einer muss wahr sein)WENN(wahr; dann diese; sonst das)
(einfache Abfrage)WENN(wahr; WENN(wahr; dann hier; sonst dort); sonst das)
(verschachtelte Abfrage)Trick
=A1&" "&A2
kann aus Anrede und Nachname "Frau Müller" machen indem einfach Zeichenfolgen (Feldwerte und fester Text (eine Leerzeichen)) per &
aneinandergereit werden.Das kann in machen Situationen verschachtelte Wenn-Abfragen ersetzen.
=Wenn(A1="x";"X;"")&Wenn(A2="x";"X;"")&Wenn(A3="x";"X;"")
(Wenn nirgends
="x"
zutrifft, dann werden nur 3 x ""
miteinander verknüpft und das Ergebnis ist insgeamt ""
.)Tief verschachtelte Wenn-Abfragen sind fehleranfällig beim Schreiben und schwer zu lesen, und haben auch Grenzen.
Es waren mal 7 Ebenen, die möglich waren, vielleicht ginge mittlerweise auch mehr.
Den "Trick" habe ich hier nicht als relevante Alternative angefügt, sondern als Anregung Formeln zu verstehen und (aus)zunutzen.
Gruß Frank
EDIT:
Steffen war wieder schneller.
Ich schreib einfach ODER(zu langsam; zu viel; UND(zu langsam; zu viel))
Klar kannst du auch Bedingungen verschachteln. Das wird natürlich schnell unübersichtlich. Den ganzen Spaß erst mal handschriftlich so zu strukturieren, wie @Pedant es vorgeturnt hat, hilft da in jedem Fall. Brauchst dir nur mal dein Beispiel oben anzusehen. WENN erwartet 3 Argumente. Bei
bist du bereits bei 3
Steffen
=WENN(C2="0";"OK";""
bist du bereits bei 3
Steffen
Mal ein Tip am Rande:
Diese Formeln sind schon sehr lang und komplex. Selbst wenn Du das alles so hinbekommst, wie Du es haben willst, dann musst Du das schon sehr gut dokumentieren, damit Du da später (Monate, Jahre) noch den Durchblick bewahren kannst, falls Du da was anpassen willst/musst.
Um das zu entschärfen, bieten sich u.a. 2 Möglichkeiten
Diese Formeln sind schon sehr lang und komplex. Selbst wenn Du das alles so hinbekommst, wie Du es haben willst, dann musst Du das schon sehr gut dokumentieren, damit Du da später (Monate, Jahre) noch den Durchblick bewahren kannst, falls Du da was anpassen willst/musst.
Um das zu entschärfen, bieten sich u.a. 2 Möglichkeiten
- Eigene Funktionen in VBA schreiben. Gut, das muss man auch können, ggf. erstmal lernen. Vorteil hierbei wären u.a., dass man sehr viel flexibler programmieren kann und man direkt im Quelltext kommentieren kann.
- Excel-Funktionen mit Zwischenergebnissen. Man kann ausgeblendete Spalten einbauen und in diesen die Zwischenergebnisse "parken". Also die große Formel in viele kleine zerlegen, diese in die versteckten Spalten. Ggf. dann diese Ergebnisse weiterverarbeiten, wieder in kleinen Formeln, wieder in ausgeblendeten Spalten. Und in den "Hauptspalten", die Formeln, welche die Zwischenergebnisse aus dan ausgeblendeten Spalten verarbeiten.
- Analog zu 2., bloß nicht mit ausgeblendeten Spalten sondern mit einem extra Blatt, welches man auch verstecken kann.
um dann zu erfahren das das nicht der richtige Weg ist.
Das habe ich nicht geschrieben.Wie komplex ist das per VBA?
Das hängt eigentlich nur davon ab, ob Du schon mal programmiert hast (egal welche Sprache) und/oder wie schnell Du Dir das ggf. aneignen kannst.Im Kern:
- Datei als XLSM speichern.
- Alt+F11 --> VBA-Editor öffnen
- neues Modul hinzufügen
- im Modul eine "Public Function" erstellen
- die neue Funktion im Excel benutzen
Aber Deine o.g. Formel ist mir nicht vollkommen klar.
Warum sind die ODER-Bedingungen
(HEUTE()>=DATUM(JAHR(E7);5;31))
und(DATEDIF(G7;HEUTE();"m")>=24)
jeweils in umschließenden Klammern aberHEUTE()>=DATUM(JAHR(D7);5;31)
nicht? Hier solltest Du konsequent sein und das einheitlich halten. Wie herum, ist Deine Sache. Ich würde aber die unnötigen Extra-Klammern weglassen.Diese ODER-Bedingung ist fehlerhaft oder erschließt sich mir nicht:
(ISTZAHL(F7);F7>0;F7<=2958465;LINKS(ZELLE("format";F7);1)="D"))))
- Wieder umschließende Klammer.
- Was soll das sein? Ein UND, welches Du bloß vergessen hast?
Unabhängig davon:
Das äußere WENN lautet (vereinfacht)
WENN( Oder-Bedingung; Dann A; Sonst B )
- A ist: WENN(C7="0";"OK";"Fehler")
- B ist: "OK"
Wenn also ein C7="0" auch ein "OK" liefern soll, warum legst Du das nicht gleich in die äußere WENN?
Also
WENN( Oder-Bedingung erweitert um " oder C7<>"0" "; Dann "Fehler"; Sonst "OK" )
Moin knuefi,
die Frage ist nicht, wie komplex VBA ist, sondern wie unnötig komlex da das Problem behandelst.
Ich habe jetzt nur die letzten 30cm des Beitrags mitgelesen, demnach ist der Sachverhalt doch so:
Spalte C wiederum prüfst du nach eigenen Aussagen auf 0 oder z.B 5.. in der Formel aber auf den String "0"
Dampf doch die Formel etwas zusammen.
Deine alte Formel lässt sich mit diesem Minimim/Maximum zusammenfassen als:
Und die Prüfung eines der Felder F7 usw. auf brauchbares datum wäre zB
Das würde ein WAHR zurückgeben bei einem Datum >= 01.01.2000 und FALSCh bei leer/Text/gummibärchen.
Und das wäre dann (ohne Gleichheitszeichen) jeweils eine zusätzliche ODER-Bedingung in deiner Formel.
Grüße
Biber
[Edit] @emeriks: Uups, das war über Kreuz. Ich Hoffe, wir erzählen nix Kontroverses.. [/Edit]
die Frage ist nicht, wie komplex VBA ist, sondern wie unnötig komlex da das Problem behandelst.
Ich habe jetzt nur die letzten 30cm des Beitrags mitgelesen, demnach ist der Sachverhalt doch so:
- ENTWEDER einer der Datumswerte in Spalte D und Spalte E muss aus einem Jahr kleiner gleich heute sein. [Anmerkung: Da nicht geprüft wird, ob in D und/oder E Datumswerte oder leere Zellen sind, wird ggf bei dir gegen das Datum 31.05.1900 geprüft und alles passt]
- ODER einer der Datumwerte in Spalte G und I ist als 24 Monate
- ODER eines der Felder in F, H oder J ist ein Datumswert
Spalte C wiederum prüfst du nach eigenen Aussagen auf 0 oder z.B 5.. in der Formel aber auf den String "0"
Dampf doch die Formel etwas zusammen.
- ENTWEDER das Minimum der Datumswerte in Spalte D und Spalte E muss aus einem Jahr kleiner gle älterich heute sein.
- ODER das Minimum der Datumwerte in Spalte G und I ist älter als 24 Monate
- ODER das Maximum der Felder in F, H oder J ist ein Datumswert (meinetwegen mit einem Jahr >=2000
Deine alte Formel lässt sich mit diesem Minimim/Maximum zusammenfassen als:
=WENN(ODER(HEUTE()>=DATUM(JAHR(MIN(D7;E7));5;31);(DATEDIF(MIN(G7;I7);HEUTE();"m")>=24));WENN(C7="0";"OK";"Fehler");"OK")
Und die Prüfung eines der Felder F7 usw. auf brauchbares datum wäre zB
=WENN(ISTZAHL(F7);JAHR(F7)>2000)
Das würde ein WAHR zurückgeben bei einem Datum >= 01.01.2000 und FALSCh bei leer/Text/gummibärchen.
Und das wäre dann (ohne Gleichheitszeichen) jeweils eine zusätzliche ODER-Bedingung in deiner Formel.
Grüße
Biber
[Edit] @emeriks: Uups, das war über Kreuz. Ich Hoffe, wir erzählen nix Kontroverses.. [/Edit]
Das wird niemand tun können, weil Du offenbar nicht in der Lage bist, Deine Anforderungen klar und logisch auszuformulieren!
Ich komme ja noch soweit mit:
Wenn in Spalte C = 1
... für OK in Spalte R muss
aber hier nicht mehr
in E oder G und I und M, eins oder mehrere nicht OK dann Fehler
Grausam!
Wenn in Spalte C = 1 für OK in Spalte R muss in E oder G und I und M, eins oder mehrere nicht OK dann Fehler
Da ist Chinesisch einfacher!Ich komme ja noch soweit mit:
Wenn in Spalte C = 1
... für OK in Spalte R muss
aber hier nicht mehr
in E oder G und I und M, eins oder mehrere nicht OK dann Fehler
Grausam!
In der Annahme, dass 3,4,5 wie 1 sein sollen,
z.B. so
VBA --> ein Modul hinzufügen --> in dieses Modul eine Funktion erstellen
In Spalte R, kommt dann
(Beispiel Zeile 4)
Das geht auch anders, u.U. einfacher, aber es ist ja für Dich zum Lernen gedacht.
z.B. so
VBA --> ein Modul hinzufügen --> in dieses Modul eine Funktion erstellen
Public Function Test123(A As String, E As String, G As String, I As String, K As String, M As String) As String
Test123 = "Nö" 'Standard: negativ
Select Case A
Case 1, 3, 4, 5
If (E = "OK" Or G = "OK") And _
I = "OK" And _
M = "OK" Then
Test123 = "Prima!" 'positiv
End If
Case 2
If (E = "OK" Or G = "OK") And _
I = "OK" And _
K = "OK" And _
M = "OK" Then
Test123 = "Prima!" 'positiv
End If
Case 6
Test123 = "Prima!" 'positiv
End Select
End Function
In Spalte R, kommt dann
(Beispiel Zeile 4)
=Test123(A4;E4;G4;I4;K4;M4)
Das geht auch anders, u.U. einfacher, aber es ist ja für Dich zum Lernen gedacht.
Das sind keine speziellen Empfehlungen von mir, nur Treffer.
Buch VBA für Anfänger
aber das hier hört sich gut an
Richtig einsteigen: Excel 2010 VBA-Programmierung - Vom aufgezeichneten Makro bis zu professionellem VBA-Code
Buch VBA für Anfänger
aber das hier hört sich gut an
Richtig einsteigen: Excel 2010 VBA-Programmierung - Vom aufgezeichneten Makro bis zu professionellem VBA-Code