Hallo zusammen,
Ich möchte die Daten von Wetterstationen auswerten und habe das Problem, dass mir bei der Berechnung von Jahreswerten, dass sobald ein Tageswert für einen Parameter fehlt, das gesamte Jahr als #NV ausgegeben wird. Für manche Jahre ist das auch sinnvoll, da fast die Hälfte der Werte fehlen, aber bei anderen fehlt eben nur ein oder zwei Werte.
Ich möchte nun für jede Station für jedes gesamte Jahr und jeden Parameter einzeln die Anzahl der #NV zählen lassen.
Mein Datum ist in der Spalte B mit dem Format JJJJMMDD eingetragen, die gemessenen Parameter in den darauffolgenden Spalten (bspw. in E der Niederschlag).
In Spalte T stehen die Jahreszahlen, für die die fehlenden Werte gezählt werden sollen.
Ich habe bereits rumgespielt, aber ich komme nicht auf die richtige Formel. Mein bisheriger Versuch sieht so aus:
=ZÄHLENWENNS(B:B;LINKS(B:B;4)=TEXT(T3;0);E:E;TEXT(#NV;0))
Jedoch gibt diese Formel 0 aus, wobei in dem Testjahr einige Fehlwerte vorhanden sind.
Könnt ihr mir hier weiterhelfen?
Mfg
Remus
Arbeitsblatt mit dem Namen 'Aachen' |
| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
1 | STATIONS_ID | MESS_DATUM | QN_3 | FX | FM | QN_4 | RSK | RSKF | SDK | SHK_TAG | NM | VPM | PM | TMK | UPM | TXK | TNK | TGK | eor | | FM | RSK | RSKF |
2 | 3 | 19400101 | 5 | #NV | 3,1 | 5 | 0 | 0 | 5 | 4 | 3,3 | 4,4 | 997,4 | -3,7 | 85 | 0,5 | -7 | -2 | eor | 1940 | 0 | | |
3 | 3 | 19400102 | 5 | #NV | 2,2 | 5 | 0 | 0 | 6,9 | 4 | 1 | 2,5 | 993,5 | -7,2 | 73 | -3,7 | -10,8 | -13,8 | eor | 1941 | | | |
4 | 3 | 19400103 | 5 | #NV | 2 | 5 | 0 | 0 | 2,2 | 4 | 4,7 | 2,9 | 983,4 | -4,3 | 67 | -1,2 | -9,6 | -14,4 | eor | 1942 | | | |
5 | 3 | 19400104 | 5 | #NV | 2,1 | 5 | 0 | 0 | 5,8 | 4 | 3 | 3,7 | 982,8 | -2,3 | 69 | 2,8 | -4,6 | -4,1 | eor | 1943 | | | |
6 | 3 | 19400105 | 5 | #NV | 0,8 | 5 | 0 | 0 | 6 | 3 | 0,3 | 4,7 | 987,4 | -2 | 87 | 1,3 | -6,2 | -10,4 | eor | 1944 | | | |
7 | 3 | 19400106 | 5 | #NV | 1,1 | 5 | 0 | 0 | 6,3 | 2 | 0 | 5,3 | 993,6 | -0,7 | 90 | 3,8 | -2,9 | -8,3 | eor | 1945 | | | |
8 | 3 | 19400107 | 5 | #NV | 1,8 | 5 | 1 | 1 | 0 | 2 | 8 | 6,3 | 994,6 | 2,4 | 88 | 4,6 | -2 | -7,5 | eor | 1946 | | | |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
In U2 soll dann die Menge der #NV für den Parameter FM im Jahr 1940 stehen.
Hallo, ist nicht sexy, aber so geht's..:
PHP-Code:
=SUMMENPRODUKT(ISTNV(E1:E100)*(LINKS(B1:B100;4)=TEXT(T3;"@")))
Bitte Bereiche anpassen! Und bitte
keine ganzen Spalten beackern!!!!
Vielen Dank!!
Auch mit der nicht sexy Lösung funktionierts endlich.
Inwiefern ist es nicht gut, dass ich ganze Spalten in den Formeln rechnen lasse? Nur als Information für spätere Formeln?
(11.06.2019, 18:52)Remus schrieb: [ -> ]...
Inwiefern ist es nicht gut, dass ich ganze Spalten in den Formeln rechnen lasse? Nur als Information für spätere Formeln?
Hallo, weil es schnell zu Ungunsten von Rechenleistung und Performance gehen kann...
Ah, macht Sinn :D
Vielen Dank für die schnelle Hilfe!
Hallo,
Ich habe heute versucht, die Formel auf die anderen Wetterstationen zu übertragen.
Die Bezüge habe ich angepasst und die Länge der Spalte auf 28000 Zeilen begrenzt (um alle Tage von 1940 - 2018 einzuschließen). Bei der Station in der Beispieltabelle oben und in der darauffolgenden hat es einwandfrei funktioniert. In der zweiten wurden mir nur noch 0 für alle Parameter ausgegeben, obwohl bereits in der ersten Zelle nicht vorhandene Werte standen.
Ich habe die Formel dann bei weiteren Stationen in der Mitte und am Ende ausprobiert, bei manchen klappts, bei manchen nicht.
Ich kann nur vermuten, dass es mit den unterschiedlichen Startjahren zumannhängen könnte, jedoch ändert auch die Anpassung der Fehlerwert-Tabelle nichts am Ergebnis.
Habt ihr noch Vorschläge, was ich probieren könnte?
Hi Remus,
wie gehabt: bitte zeige anhand einer Datei, was nicht richtig angezeigt wird. Vor allem mit deinen Formeln!
Oh, bitte entschuldigt.
Arbeitsblatt mit dem Namen 'Angermuende' |
| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
1 | STATIONS_ID | MESS_DATUM | QN_3 | FX | FM | QN_4 | RSK | RSKF | SDK | SHK_TAG | NM | VPM | PM | TMK | UPM | TXK | TNK | TGK | eor | | FM | RSK | SDK |
2 | 164 | 19470101 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 4,1 | 1015,4 | -3 | 83 | -2 | -4 | #NV | eor | 1940 | 0 | 0 | 0 |
3 | 164 | 19470102 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 3,9 | 1019 | -3,8 | 82 | -2,4 | -5 | #NV | eor | 1941 | 0 | 0 | 0 |
4 | 164 | 19470103 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 3,3 | 1028,6 | -5,9 | 81 | -3,5 | -8 | #NV | eor | 1942 | 0 | 0 | 0 |
5 | 164 | 19470104 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,6 | 1033,6 | -12,8 | 72 | -7,6 | -15,8 | #NV | eor | 1943 | 0 | 0 | 0 |
6 | 164 | 19470105 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,3 | 1028,2 | -15,4 | 72 | -11,4 | -17,7 | #NV | eor | 1944 | 0 | 0 | 0 |
7 | 164 | 19470106 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,2 | 1022,3 | -16,9 | 77 | -13,3 | -19,8 | #NV | eor | 1945 | 0 | 0 | 0 |
8 | 164 | 19470107 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,6 | 1017 | -14,8 | 80 | -11,5 | -18,5 | #NV | eor | 1946 | 0 | 0 | 0 |
9 | 164 | 19470108 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,6 | 1017,5 | -15,5 | 84 | -10,6 | -19,5 | #NV | eor | 1947 | 0 | 0 | 0 |
10 | 164 | 19470109 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 2 | 1013,8 | -10,3 | 74 | -8,2 | -15,8 | #NV | eor | 1948 | 0 | 0 | 0 |
11 | 164 | 19470110 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 2,1 | 1013,6 | -11,8 | 80 | -8 | -15,2 | #NV | eor | 1949 | 0 | 0 | 0 |
12 | 164 | 19470111 | #NV | #NV | #NV | 5 | #NV | #NV | #NV | #NV | #NV | 1,5 | 1011,4 | -15,2 | 80 | -8,6 | -20,4 | #NV | eor | 1950 | 0 | 0 | 0 |
Zelle | Formel |
U2 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T2;"@"))) |
V2 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T2;"@"))) |
W2 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T2;"@"))) |
U3 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T3;"@"))) |
V3 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T3;"@"))) |
W3 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T3;"@"))) |
U4 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T4;"@"))) |
V4 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T4;"@"))) |
W4 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T4;"@"))) |
U5 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T5;"@"))) |
V5 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T5;"@"))) |
W5 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T5;"@"))) |
U6 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T6;"@"))) |
V6 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T6;"@"))) |
W6 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T6;"@"))) |
U7 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T7;"@"))) |
V7 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T7;"@"))) |
W7 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T7;"@"))) |
U8 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T8;"@"))) |
V8 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T8;"@"))) |
W8 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T8;"@"))) |
U9 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T9;"@"))) |
V9 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T9;"@"))) |
W9 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T9;"@"))) |
U10 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T10;"@"))) |
V10 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T10;"@"))) |
W10 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T10;"@"))) |
U11 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T11;"@"))) |
V11 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T11;"@"))) |
W11 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T11;"@"))) |
U12 | =SUMMENPRODUKT(ISTNV($E$1:$E$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T12;"@"))) |
V12 | =SUMMENPRODUKT(ISTNV($G$1:$G$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T12;"@"))) |
W12 | =SUMMENPRODUKT(ISTNV($I$1:$I$28000)*(LINKS($B$1:$B$28000;4)=TEXT(T12;"@"))) |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Bei der vorherigen Tabelle, die bei 2011 beginnt, funktionieren die kopierten Formeln.
Liegt es daran, dass teils bei manchen Parametern ganze Jahre an Werten fehlen? Aber dann müsste ja 365 in den Zellen stehen, oder irre ich mich da?