Zahlenreihe in Excel durchsuchen?
Moin,
wenn in einer Zelle die zweite Zahl eine 6 ist, soll der Wert Wahr ausgegeben werden.
Falls dies nicht der Fall sein sollte, oder die Zelle leer ist dann Falsch
Es geht immer um 4stellige Zahlen.
Vorab Danke
Gruß
Peter
3 Antworten
Geprüft werden soll also, ob die Hunderterstelle eine 6 ist.
Im Folgenden gehe ich davon aus, dass die zu prüfende Zahl in B6 steht. Das ist ggf. anzupassen.
Dazu schneiden wir erst mal die Tausenderstelle raus:
REST(B6;1000)
(funktioniert auch mit mehr als 4 stellen - es verschwinden alle Stellen ab der Tausenderstelle nach links)
Dann ignorieren wir alle Ziffern nach der Hunderterstelle (Division durch 100, Nachkommateil streichen):
QUOTIENT(REST(B6;1000);100)
Das müssen wir noch mit 6 vergleichen
QUOTIENT(REST(B6;1000);100)=6
Und Excel noch sagen, dass das eine Formel ist:
=(QUOTIENT(REST(B6;1000);100)=6)
(Weil auch für die Formel ein Gleichheitszeichen verwendet wird, setze ich den Ausdruck mit dem Gleichheitszeichen in Klammern - sonst sieht das für meine Programmiereraugen irgendwie falsch aus.)
Noch ein WENN darum packen:
=WENN(ISTTEXT(B1);"";<Formel von oben>)
oder besser, abfrage, ob es sich um eine Zahl handelt:
=WENN(NICHT(ISTZAHL(B1));"";<Formel von oben>)
(wobei bei <Formel von oben> ohne das "=" am Anfang gemeint ist)
1000 Dank. Ich glaube ich werde es nie lernen.
Vielen Dank für die Antwort und Danke für die tolle Erklärung.
z.B. so
Nicht zu verachten / super und einfach von DanKirpan23.11.22, 18:16:35
=TEIL(A1;2;1)="6"
... als Kommentar zu meiner Antwort
*****************************************************************
=WENN(FINDEN(6;A1)=2;"Wahr";"Falsch")
zur Vermeidung von Fehlermeldung z.B. bei leeren Zellen
=WENN(ISTFEHLER(WENN(FINDEN(6;A1)=2;"Wahr";"Falsch"));"Falsch";WENN(FINDEN(6;A1)=2;"Wahr";"Falsch"))
![- (Formel, Microsoft Excel)](https://images.gutefrage.net/media/fragen-antworten/bilder/478979103/0_big.png?v=1669231163000)
Erstmal vielen Dank für die schnelle Antwort.
Warum schreibt er bei der ersten Formel bei 2655 Wahr hin aber bei 2555 #Wert.
Bei der zweiten schreibt er Wahr und bei 2555 bleibt die Zelle leer.
Ich glaube ich sehe heute den Wald vor lauter Bäumen nicht mehr.
Bei mir nicht, bei 2555 kommt Falsch heraus. Prüfe mal, ob die Zeilenangabe/Zellenangabe stimmt.
Die Formel z.B. in Zeile 1 eingeben und runterziehen/runter kopieren
Habe die Formel auf "Falsch" bei leerer Zelle erweitert.
Ich habe es in ein neues Blatt eingefügt und da funktioniert es perfekt. 1000 Dank.
Finden() sucht von links nach rechts nach dem Wert, in dem Fall also nach "6". Da 2555 keine 6 enthält gibt sie einen Fehler aus der sich bis ans Ende durchzieht, wenn man ihn nicht mit der zweiten Variante abfängt
6644 müsste aus demselben Grund fälschlicherweise als Falsch ausgegeben werden, um das zu vermeiden kann man stattdessen =TEIL(A1;2;1)="6" verwenden
@GutenTag2003 Warum überhaupt eine Wenn() die Wahr oder Falsch ausgibt wenn das schon die Bedingung tut?^^
Schau Dir noch mal den Anfang von meiner Antwort an und den Hinweis auf DanKirpan
=WENN (ODER(LINKS(A1;1);RECHTS(LINKS(A1;2);1);RECHTS(LINKS(A1;3);1);RECHTS(LINKS(A1;4);1))=6;WAHR;FALSCH)
Keine sehr elegante Lösung, sollte aber (falls ich keine Klammer vergessen habe) funktionieren.
Eine Frage habe ich noch :) Ich habe das ganze nun ich eine Wenn Funktion eingebaut =WENN((QUOTIENT(REST(B1;1000);100)=6);WAHR;FALSCH) was auch dank deiner Hilfe super funktioniert. Wenn nun aber in B1 ein Text steht statt einer Zahl, kann ich dann einfügen dass er nichts hinschreibt? oder wäre das zu umfangreich?