Ich komme bei einer Aufgabenstellung nicht so recht weiter. Für ein Studienprojekt möchste ich folgende Auswertung fahren:
Ich bekomme nacheinander verschiedene Messwerte, wie z.B. in Spalte D. Nun soll ein variabler Bereich davon nächer betrachtet werden, den ich in Spalte B mal gekennzeichnet habe. Aus diesem Bereich soll der kleinste Wert identifiziert werden. (Zelle D9) Alle Werte vor dem kleinsten Wert sollen als "Falsch" zurückgegeben werden, und die Werte danach mit "Wahr".
Rechts daneben habe ich noch einmal den Wert in D12 geändert, um das noch einmal anschaulicher zu machen.
Aber irgendwie stehe ich auf dem Schlauch. Hätte da jemand eine Idee?
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:1 Nutzer sagt Danke an Ego für diesen Beitrag 28 • Kopernikus
10.04.2021, 23:26 (Dieser Beitrag wurde zuletzt bearbeitet: 10.04.2021, 23:28 von Ego.)
Hallo K...,
um eine umbekannte Formel zu verstehen sollte man sie von innen nach aussen lesen:
A:= Tabelle1[Wert] die Spalte mit der Überschrift "Wert" aus der Tabelle
B:= Tabelle1[Zufallsbedingung] die Spalte mit der Überschrift "Zufallsbedingung" aus der Tabelle
C:= (B<>"Nein") Eine Liste mit Wahrheitswerten mit FALSCH wenn als Zufallsbedingung "Nein" steht und ansonsten WAHR
D:= A/C Bevor durch die Wahrheitswerte geteilt wird, werden sie in Zahlen umgewandelt 0 für FALSCH und 1 für WAHR. Ich erhalte also eine Liste in der der Wert der Spalte "Wert" steht, wenn in der gleichen Zeile kein "Nein" steht (da der Wert durch 1 geteilt wird), und einen Fehlerwert, wenn in der gleichen Zeile ein "Nein" steht ( da der Wert durch 0 geteilt wird).
E:= AGGREGAT(15;6;D;1) Mit der Aggregatfunktion kann ich verschiedene andere Funktionen nachbilden. Wichtig ist hierbei der zweite Parameter. Der zweite Parameter "6" bedeutet, das unter anderen für die gewünschte Funktion die Fehlerwerte ignoriert werden. Der erste Parameter "15" sagt, dass ich die Funktion Kkleinste nutzen möchte und der vierte Parameter "1" entspricht dem zweiten Parameter der Funktion Kkleinste. Ich erhalte also den kleinsten Wert aus D wobei Fehlerwerte ignoriert werden (dh für die kein "Nein" eingetragen wurde). Im Beispiel ist E = 1664,71.
F:= VERGLEICH(E;D;0) Die Funktion Vergleich mit dem dritten Parameter "0" ermittelt die erste Position in D, die mit E (1664,71) übereinstimmt. Auch diese Funktion ignoriert Fehlerwerte so dass ich dass erste Auftreten des Wertes E aus den Zeilen bekomme, in denen kein "Nein" eingetragen wurde. Im Beispiel ist F = 6.
G:= ZEILE()-ZEILE($F$3) Die Position der aktuellen Zeile ab dem Beginn der Tabelle.
H:= G>=F Ergibt einen Wahrheitswert. WAHR, wenn die Position der aktuellen Zeile größer oder gleich der Position des Minimum ist.
I:= B4<>"Nein" Ergibt einen Wahrheitswert. WAHR, wenn in der aktuellen Zeile kein "Nein" eingetragen wurde.
J:= UND(I;H) Ergibt einen Wahrheitswert. WAHR, wenn beide Einzelwerte WAHR sind. Also das Gewünschte: Wenn in der Zeile kein "Nein" eingetragen ist (I) und die Position der Zeile gösser oder gleich der Position des Minimums aus dem Bereich ohne "Nein" ist (H).
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:1 Nutzer sagt Danke an Ego für diesen Beitrag 28 • Kopernikus
vielen Dank für die Erklärung. :) "AGGREGAT" "VERGLEICH" und "ZEILE" sind tatsächlich völlig neue Dörfer für mich, die ich lernen muss. Da habe ich heute auf jeden Fall etwas zu tun
Mir ist doch noch ein kleines Problem aufgefallen.
Der variable Bereich, er näher betrachtet werden sol (Spalte B) kann mehrmals in der Reihe auftauchen. Nun benötige ich jeweils "für sich" den kleinsten Wert. Die Formel berücksichtigt leider nur die gesamte Tabelle.
Ca:=ZEILE(B)>AGGREGAT(14;6;ZEILE($B$4:B4)/($B$4:B4<>"ja");1)) Eine Liste von Wahrheitswerten mit WAHR wenn die Zeile der Tabelle grösser als die grösste Zeile (Aggregat(14;...)) im Bereich bis zur aktuellen Zeile ($B$4:B4) ist, die kein "Ja" enthält.
und
D:= A/C/Ca
und
K:= WENNFEHLER(J;FALSCH) Im Beispiel ab Zeile 32 gibt es keinen Bereich mehr der ein "Ja" enthält. Die Formel ohne Wennfehler würde den Fehlerwert "#Wert" ergeben. Durch die Funktion Wennfehler wird in diesem Fall ein FALSCH ausgegeben.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
danke für die Hilfe, aber das klappt noch immer nicht. :( @PIVPQ, danke für das PQ, aber ich benötige nur ein Ergebnis.
@Ego, Leider sind die Bereiche noch verbunden.
Lass uns noch mal einen Schritt zurück gehen.
Nehmen wir eine einfach Summenformel, um den Bereich zu verwenden. Lässt sich ein variabler und zusammen hängender Bereich definieren, der an eine Bedigung geknüpft wird?
Einmal ein Beispiel im Bild. Wir ziehen für jede Zeile eine Summe aus Spalte "C", Solange die Bedingung in Spalte "B" Wahr ist. In Zelle F5 wäre der Bereich von C5 bis C8, da in der Spalte B die Werte von B5 bis B8 wahr sind. In Zelle F6 wäre der Bereich von C6 bis C8, da in der Spalte B die Werte von B6 bis B8 wahr sind. usw..
In Zelle F15 fängt ein Neuer Bereich an von C15 bis C19, da in der Spalte B die Werte von B15 bis B19 wahr sind.
Ich habe die Formel einmal in die anliegende Datei in Spalte F übernommen und den Rahmen über bedingte Formatierung hinzugefügt. Natürlich darf man die Formel nicht nur in F4 übernehmen, sondern in F4 eintragen und dann die Formel in die nächsten Zeilen der Spalte übernehmen.
Was ist an dem Beispiel noch falsch?
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität. Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen." Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
das Problem ist, dass unten die Zeile 27 (Bereich 24) größer sein muss als der obere Wert aus Zeile 9 (Bereich 6). In dem Moment wo der untere Wert Wert kleiner wird, wird die Formel oben nicht mehr angewandt.