Ich habe eine Excel-Tabelle in eine Tabelle umgewandelt.
Ich habe eine Spalte, die mit einer Formel ausgefüllt ist, aber beim Eingeben der Daten funktioniert die Formel nicht.
Wie Sie sehen, wird für die Spalte [Altersgruppe] in der zweiten Zeile keine Berechnung für die Spalte [Alter] durchgeführt.
Antwort1
müssen Berechnungsoptionen -> automatisch einschalten
Antwort2
Interessanterweise gibt es auch noch eine andere Möglichkeit mit Varianten, allerdings war die Lösung hier auf jeden Fall schön und schnell!
Das angegebene Bild lässt Folgendes als Möglichkeit zu, obwohl nicht gezeigtes Material auf der linken Seite (Spalten A und B) dasselbe Bild erzeugen könnte und das Problem daher NICHT auf Folgendes zurückzuführen wäre.
Wenn eine Tabelle mehr als die Anfangszeile enthält, kann es sein, dass eine Spalte Formeln enthält, die Informationen aus beispielsweise leeren Zellen in ihrer Zeile benötigen. Und wenn, wie in diesem Fall, eine leere Zelle aus der vorhandenen Formel eine leere Zelle erzeugen SOLLTE, dann würde dies sicherlich der Fall sein.
Wenn man außerdem alle Daten unter der ersten Zeile löscht, löscht man möglicherweise auch die Formel. Und wenn man die Größe der Tabelle nicht ändert, sondern anfängt, Daten in die jetzt leeren Zeilen einzugeben, sieht man möglicherweise keine Ausgabe von ... keiner Formel.
Man kann dann eine oder mehrere Zeilen hinzufügen und feststellen, dass die Formel in der entsprechenden Spalte dieser Zeilen angezeigt wird. Das Problem wird also deutlich, wenn man beispielsweise hier Zeile 2 hinzufügt, zum Ende der Tabelle geht und eine neue Zeile hinzufügt, indem man Daten in Spalte A oder B eingibt, und ein erfreuliches Ergebnis sieht: Die Formel ist in dieser Zelle vorhanden, obwohl in diesem Fall richtigerweise ein Leerzeichen angezeigt wird.
Das ist ein Kartenhaus voller Zufälle, aber mit nur (bis zu) vier Zeilen unter der letzten eindeutig erfolgreichen Formel über der ausgewählten Zelle IST es möglich.
Die Lösung bestünde dann natürlich darin, die Größe der Tabelle durch Löschen der einmal gelöschten Zeilen zu ändern oder über das Steuerelement in der untersten, äußersten rechten Ecke der Zelle alles zu löschen, was in den nicht mehr in der Tabelle vorhandenen Zellen verblieben ist, und fortzufahren.
Beim Testen stieß ich auf eine merkwürdige Sache. Eigentlich zwei, aber eng miteinander verbunden. Wenn man außerhalb der Grenzen einer Tabelle eine Zahl in eine allgemein formatierte Zelle eingibt, wird sie als Zahl angezeigt, rechtsbündig in der Zelle ausgerichtet, von allen Funktionen als Zahl betrachtet und so weiter. Wenn man sie dann in das Textformat umformatiert, bleibt sie oft in diesem Anzeigemodus erhalten und Formeln behandeln sie weiterhin als Zahl, obwohl dies bei manchen nicht der Fall ist.
Und wenn statt einer Zahl eine Formel vorhanden war, wird deren Ergebnis in der Regel trotzdem verwendet, auch von einer Formel, die NACH der Neuformatierung(!) erstellt wurde. Man kann die Zelle durch Drücken von F2 und Enter und auf andere Weise in die gewünschte Position „zwingen“, und dann wird die Neuformatierung in jeder Hinsicht „greifen“.
Wenn Sie jedoch in einer Tabelle die Zellen einer Formel in Text umformatieren und einige grundlegende Zwangstechniken anwenden, funktioniert die Formel weiterhin, obwohl alle numerischen Ergebnisse als Text, linksbündig usw. dargestellt werden. Die Formeln FUNKTIONIEREN WEITER und ändern die Ergebnisse für einen neu eingegebenen Wert, den die Formel verwendet!
Ich bin nicht sicher, welchen Nutzen das haben könnte oder ob es ein Fehler ist, der in einer zufälligen zukünftigen Version behoben wird, aber … interessant.
Antwort3
Es sieht so aus, als würden Sie die Zellenwerte falsch referenzieren. So wie Sie es geschrieben haben, [Age]
wird das gesamte Feld referenziert. Sie möchten [@Age]
auf den Wert in diesem Feld und in derselben Zeile wie die Formel verweisen. Siehe:Verwenden strukturierter Referenzen mit Excel-Tabellen - Microsoft Support
=IF(ISBLANK([@Age]),"",IF([@Age]<18 ... et cetera
Nebenbei bemerkt können Sie mit der IFS()
Funktion effizienter arbeiten, die wie mehrere IF()
Anweisungen funktioniert, aber ohne die Verschachtelung. Sie nimmt mehrere condition,result
Paare an und gibt das Ergebnis zurück, das der ersten wahren Bedingung entspricht. Sie können es noch effizienter machen, indem Sie die Reihenfolge Ihrer numerischen Prüfungen umkehren, aber Sie sollten die leere Prüfung am Anfang beibehalten. Im folgenden Beispiel habe ich sie in eine NOT(ISNUMBER())
Prüfung umgewandelt, um die Fälle abzufangen, in denen jemand Text statt einer Zahl eingibt.
=IFS(NOT(ISNUMBER([@Age])),"",[@Age]>=85,"85+",[@Age]>=65,"65 to 84",[@Age]>=40,"40 to 64",[@Age]>=18,"18 to 39",[@Age]<18,"<18")