Warum funktioniert die bedingte Formatierung in meinem Excel nicht?
Hallo Community,
zur Überprüfung von Exceleinstellungen nutze ich bedingte Formatierungen, die mir, bei falschen Einstellungen, eine Fehlermeldung anzeigen soll. Die bedingten Formatierungen für die Überprüfung der Datumswerte und der Rundungseinstellungen funktionieren. Jedoch funktioniert die Überprüfung des Dezimalstellensymbols nicht. Das Problem tritt jedoch nur bei MEINEM Rechner auf. Wenn jemand anderes die von mir erstellte Datei öffnet, wird bei falsch gesetztem Dezimaltrenner die dafür vorgesehene Zelle, wie gewünscht rot eingefärbt.
Die bedingte Formetierung hat folgende Formel: =NICHT(ISTZAHL(WENNFEHLER(FINDEN(",";TEXT($A$34;"0,0"));"")))
In Zelle A34 steht eine Dezimalzahl. Bei einem Komma bleibt der Hintergrund weiß, bei einem Punkt oder anderen Zeichen, wird der Hintergrund jedoch rot eingefärbt.
Bei mir funktioniert dies jedoch nicht, trotz Umstellung des Dezimaltrenners. Wenn ich die Formel direkt in eine Zelle eingebe, wird immer, auch bei Umstellung des Dezimaltrenners ein "FALSCH" angezeigt. Andere bedingte Formatierungen funktionieren bei mir aber sauber (Überprüfung von Datums- und Rundungseinstellung). Gibt es bei Excel irgendwelche Optionen, die man noch umstellen muss/kann, damit auch bei mir diese Überprüfung funktioniert? Leider ist die Überprüfung kritisch für die Freigabe.
Vielen Dank im Voraus
4 Antworten
Die Formel ist meiner Meinung nach Unsinnig.
Du baust dir zuerst einen Text mit dem Format 0,0
bekommst hier aber Probleme da Excel 1.4 zum Beispiel als Datum erkennt und 42826 draus macht und hier das Komma anhängt.
Versuch es mal so:
=NICHT(WENN(WENNFEHLER(FINDEN(",";$A$34);FALSCH);WAHR))
Er zeigt mir immer WAHR als Ausgabe an. Auch wenn ich in der Formel die Werte WAHR und FALSCH tausche, zeigt er WAHR an.
Auch wenn ich in der Formel die Werte WAHR und FALSCH tausche, zeigt er WAHR an.
Das ist logisch, dann zeigt er IMMER Wahr an.
Aber bei mir zeigt die eigentliche Formel wenn ich 12,7 eingebe Falsch an.
Tja, keine Ahnung warum, aber nachdem ich die Datei neu geöffnet habe, tut die von dir gepostete Formel genau das, was sie soll.
Kannst du mir, damit ich es auch selbst verstehe, kurz erklären, warum du das @ in der Formel nutzt?
Vielen Dank
Das @ macht aus dem was dort geschrieben ist einen Text.
=NICHT(WENN(WENNFEHLER(FINDEN(",";TEXT($A$34;"@"));FALSCH);WAHR))
1. Mach aus A34 einen Text. TEXT($A$34;"@")
2. Suche ob in dem Text ein Komma vorkommt: FINDEN(",";TEXT($A$34;"@"))
- Variable a: Mach aus A34 einen Text. TEXT($A$34;"@")
- Variable b: Suche ob in dem Text ein Komma vorkommt: FINDEN(",";a)
- Variable c: wenn kein komma vorkommt gib Falsch aus, ansonsten die Zahl des Vorkommens. WENNFEHLER(b;FALSCH)
- über die Wenn-Formel: Wenn c="Falsch" dann Falsch wenn c eine Zahl ist (also ein Komma vorkommt) dann Wahr. Beispielformel =WENN(3;1;0) ergibt IMMER 1. Also eine Wenn abfrage auf eine Zahl ergibt immer WAHR
- da sich die Zelle bei Wahr einfärbt sie sich aber bei falsch einfärben soll muss man das Ergebnis noch mit NICHT umkehren.
Punkt 4 ist auch die Erklärung warum =NICHT(WENN(WENNFEHLER(FINDEN(",";TEXT($A$34;"@"));WAHR);FALSCH)) IMMER Wahr ergeben muss. Du setzt den Wert wenn keine Komma da ist auf WAHR und setzt für Fasch die WENNformel mit WENN(Zahl;WAHR) auch immer aus WAHR. Das heisst hier KANN kein Falsch enstehen.
Vielen Dank für die ausführliche Erklärung!
Hallo,
muss ganz ehrlich sagen, da bin ich gerade relativ blank. Auch bei mir funktioniert deine Formel.
Ich nehme an, dass es mit der Excel-Version oder den Ländereinstellungen zu tun haben kann. Welches Excel nutzt du, welche Ländereinstellung?
LG, Chris
bei mir funktioniert Deine Formel nicht bzw. liefert auch bei Eingabe von 10,00 als Ergebnis FALSCH.
Die Formel selbst erscheint mir aber auch etwas kompliziert
=ISTFEHLER(SUCHEN(",";A34)>0) liefert doch auch das Ergebnis bzw. bei amerikanischer Schreibweise 5,000.00 findet sich auch ein Komma, ohne dass es die gewünschte Formatierung ist. Wenn Du das abfangen willst, muss noch mehr geprüft werden.
=NICHT(ISTZAHL(TEIL(A34;FINDEN(",";A34)+1;9)*1))
Ja, das mag generell gelten. Bei meiner Abfrage ist dies jedoch unmöglich, da in einem geschützten Feld eine Konstante voreingestellt ist. Das Feld kann durch den Endnutzer nicht geändert werden und deine berechtigte Anmerkung zu der Formel, die für andere Abfragen sicherlich ungenüged ist, ist somit unkritisch.
Wir haben Office Standard 2010 (Version 14.0.7151.5001, 32 Bit) mit Deutscher Ländereistellung.
Die Zelle ist als Zahl definiert und ist geschützt. Insofern dient diese nur als Überprüfung der Darstellung. Insofern wird diese immer als Dezimalzahl angezeigt.
Wenn ich nun deine Formel ausprobiere, zeigt er mir, unabhängig des eingestellten Dezimaltrenners, immer "WAHR" an. Hier funktioniert also die Überprüfung nicht. Bei anderen Rechnern ist dies aber kein Problem. Insofern ist meine Frage unabhängig der gewählten Bedingung, aber hat wohl mehr etwas mit den genutzten Funktionen NICHT, WENN, WENNFEHLER oder FINDEN zu tun, die bei mir nicht korrekt durchlaufen.