Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Vollladezyklen Speicher berechnen

Vollladezyklen Speicher berechnen
16.02.2023 12:10:08
Fabian
Hallo Liebe Excel-Experten,
ich zermartere mir gerade das Hirn wie ich die Vollladezyklen eines Speicher berechnen kann. Im Prinzip geht es darum:
Ich habe einen Energieertrag durch erneuerbare Energien, welche zuerst eine Last decken sollen. Wenn die das nicht schaffen, dann soll der Stromspeicher aushelfen. Wenn eine Überdeckung vorhanden ist, dann soll der Speicher befüllt werden.
Soweit kein Problem, allerdings würde ich gerne noch veranschaulichen, wie oft der Speicher komplett entladen und beladen wird. Also eigentlich nur zählen, wie oft sich der Wert vom Speicher von komplett leer (0/Min) auf komplett voll (40/Max) verändert. Allerdings soll nicht gezählt werden, wenn der Speicher noch nicht komplett leer war, bevor er wieder komplett beladen ist.
https://www.herber.de/bbs/user/157858.xlsx
Hier die deutlich abgespeckte Excel-Mappe!
Es wäre super, wenn ihr mir dabei helfen könntet!
MfG Fabi

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vollladezyklen Speicher berechnen
16.02.2023 13:05:30
MCO
Hallo Fabi!
Ich hab mich mal getraut, dass mit den neuen Funktionen zu lösen, obwohl auch ein funktion in VBA es getan hätte oder eine Schleife.
Diese Formel listet alle 0 + 40-Werte auf. Beispielhaft in F8
=FILTER(B7:B8767;(B7:B8767=0)+(B7:B8767=40);"")
Wichtig für dich sind ja nur die Folgen an denen erst 0, dann (irgendwann) 40 steht, sprich: voll aufladen.
Diese Formel bezieht sich auf die erste und wertet genau diese Zahlenabfolge aus
=SUMME(--(F8#-BEREICH.VERSCHIEBEN(F8#;-1;;ANZAHL(F8#))=40))
Leider war es mir nicht möglich, dass in 1 Formel zu packen, mit BEREICH.VERSCHIEBEN kommt es da zu einem BEZUG#-Problem.
Vielleicht kommst du ja damit schon weiter...
Gruß, MCO
Anzeige
AW: Vollladezyklen Speicher berechnen
16.02.2023 13:48:02
Fabian
Super! Vielen Dank, das denke ich funktioniert!
AW: Vollladezyklen Speicher berechnen
16.02.2023 13:13:41
ChrisL
Hi
Mein Vorschlag ist etwas amateurhafter wie der von MCO und die Rechnung ergibt einen Punkt weniger.
C8:
=WENN(UND(B8=0;B7>0);"leer";WENN(UND(B8=40;B7>40);"voll";""))
D8:
=WENN(UND(INDEX(C$1:C7;SUMMENPRODUKT(MAX((C$1:C7>"")*ZEILE(C$1:C7))))="leer";C8="voll");MAX(D$1:D7) +1;0) 
Ergebnis:
=MAX(D:D)
cu
Chris
AW: Vollladezyklen Speicher berechnen
16.02.2023 13:26:52
ChrisL
hier noch mit Power-Query
- Bereich markieren
- Daten, Aus Tabelle Bereich
- Code im erweiterten Editor ersetzen
let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Zeitintervall", Int64.Type}, {"Batterie-Ist", type any}}),
    #"Gefilterte Zeilen" = Table.SelectRows(#"Geänderter Typ", each ([Zeitintervall] > null) and ([#"Batterie-Ist"] = 0 or [#"Batterie-Ist"] = 40)),
    #"Hinzugefügter Index" = Table.AddIndexColumn(#"Gefilterte Zeilen", "Index", 0, 1, Int64.Type),
    #"Hinzugefügter Index1" = Table.AddIndexColumn(#"Hinzugefügter Index", "Index.1", 1, 1, Int64.Type),
    #"Zusammengeführte Abfragen" = Table.NestedJoin(#"Hinzugefügter Index1", {"Index.1"}, #"Hinzugefügter Index1", {"Index"}, "Hinzugefügter Index1", JoinKind.LeftOuter),
    #"Erweiterte Hinzugefügter Index1" = Table.ExpandTableColumn(#"Zusammengeführte Abfragen", "Hinzugefügter Index1", {"Batterie-Ist"}, {"Hinzugefügter Index1.Batterie-Ist"}),
    #"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Erweiterte Hinzugefügter Index1", "Benutzerdefiniert", each if[#"Hinzugefügter Index1.Batterie-Ist"]=0 and [#"Batterie-Ist"]=40 then 1 else 0),
    #"Gruppierte Zeilen" = Table.Group(#"Hinzugefügte benutzerdefinierte Spalte", {"Benutzerdefiniert"}, {{"Anzahl", each List.Sum([Benutzerdefiniert]), type number}}),
    #"Gefilterte Zeilen1" = Table.SelectRows(#"Gruppierte Zeilen", each ([Benutzerdefiniert] = 1)),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Gefilterte Zeilen1",{"Benutzerdefiniert"})
in
    #"Entfernte Spalten"

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige