Frage Zeitunterschied mit OpenOffice.org Calc feststellen


Ich habe Daten in diesem Format:

      Action  (A)                  |     Time logged (B)
  ---------------------------------|-----------------------
1 |Policy converted successfully   |   19-FEB-10 18:34:01   
2 |Policy converted successfully   |   19-FEB-10 18:34:10   
3 |Policy converted successfully   |   19-FEB-10 18:34:21   

Ich muss den Zeitunterschied zwischen Zeile 2 und Zeile 1 in Sekunden (oder Minuten / Stunden) finden. Wie kann ich das gleiche mit OpenOffice.org Calc tun? Ich habe es versucht =B2-B1, die resultierende Zelle hatte eine Err: 529 als Ergebnis. Ich habe versucht, Formatmaske von DD-MMM-YY HH:MM:SS sowohl auf der Quell- als auch auf der Zielzelle, aber ohne Wirkung. Irgendwelche Hinweise, wie dies zu erreichen ist?

Es gibt ungefähr 2800 Reihen von Aufzeichnungen, von denen jede nur nicht möglich ist.


4
2018-02-22 21:24


Ursprung


Sommerzeit, jemand? - Arjan
(Wenn es sich um einen Import einer Textdatei handelt, kann es sinnvoll sein, während des Imports explizit Datums- / Uhrzeitspalten als Datums- und Uhrzeitangaben zu definieren.) - Arjan
@Arjan - DST ist hier nicht anwendbar :) - Sathya♦


Antworten:


Als Chris antwortete, ist Ihr Problem, dass Ihr Arbeitsblatt die Daten als Textzeichenfolge und nicht als Datum speichert.

Zusätzlich dazu kann eine Zelle nur ein Datum (d. H. Ein Tag auf dem Kalender) sein, oder eine Zeit (Uhrzeit), nicht beides.   Edit: Nicht wahr, das funktioniert ganz gut. Es gibt nur keine Parsing-Funktion, um Datum und Uhrzeit auf einmal zu analysieren.

Zuerst müssen Sie Ihre Datums- und Uhrzeit-Zeichenfolge in zwei Spalten aufteilen. Verwenden Sie dann DATEVALUE, um das Datum zu konvertieren, und TIMEVALUE, um die Uhrzeit zu konvertieren. Dann kannst du mit ihnen rechnen.

Um dies zu tun, können Sie Formeln wie folgt verwenden:

Policy converted successfully   |       19-FEB-2010 18:34:01 | =LEFT(B1; 11) | =RIGHT(B1;8) | =DATEVALUE(C1) | =TIMEVALUE(D1) | =E1+F1

Erläuterung:

  • Die ersten beiden Formeln (LINKS, RECHTS) teilen die Zeichenfolge in Datum und Uhrzeit auf, um sie getrennt zu analysieren.
  • Die nächsten zwei (DATEVALUE, TIMEVALUE) analysieren einen String als Datum / Uhrzeit
  • die letzte kombiniert Datum und Uhrzeit in einer Zelle (intern sind Datum und Uhrzeit nur Gleitkommazahlen, Sie können also hinzufügen)

Jetzt können Sie sie nach Herzenslust verwenden. Natürlich könnten Sie die Formeln kombinieren, um weniger Zellen zu verwenden.

Wenn die letzte Spalte nicht als Datum und Uhrzeit, sondern als Zahl angezeigt wird, wählen Sie die Formatierung "Datum".


5
2018-02-22 23:12



Danke, das scheint vielversprechend. Ich werde es ausprobieren und Sie morgen wissen lassen, nur Büro verlassen;) - Sathya♦
Arbeitete wie ein Zauber, vielen Dank! - Sathya♦


Zur Berechnung der Differenz zweier Zeiten in Stunden:

=(HOUR(E17)+(MINUTE(E17)/60))-(HOUR(D17)+(MINUTE(D17)/60))

wo D17 ist die "von Zeit" und E17 ist die "Zeit". Sowohl E17 als auch D17 sollten als Uhrzeit formatiert sein.


5
2018-06-08 14:21



Dies ist eine großartige, allgemeine Antwort. - DanM7
Du könntest es einfach tun =E17-D17 und benutzen [HH] oder [HH]:MM um das Ergebnis zu formatieren. - Jason C


Würde so etwas helfen?

http://www.ehow.com/how_5924425_calculate-time-differences-openoffice.html

Ich habe OO nicht installiert, kann also nicht überprüfen. Grundsätzlich benutze die DATEDIFF Funktion.


1
2018-02-22 21:36



Unglücklicherweise datediff scheint nicht in Zellzahlen als Referenz zu nehmen :( - Sathya♦
: - Entschuldigung, ich hätte OO installieren und testen sollen :) - Burton
Keine Sorge, danke für den Versuch :) - Sathya♦
Es scheint, dass datediff ist keine Arbeitsblattfunktion (siehe wiki.services.openoffice.org/wiki/Documentation/How_Tos/...) aber etwas von der HSQLdb - Datenbank - Engine (siehe wiki.services.openoffice.org/wiki/...) - Arjan


Klingt so, als wären die Daten eine Zeichenfolge und müssen zuerst in ein Datum konvertiert werden. Datumsangaben werden intern als Fließkommazahlen gespeichert, sodass Sie sie einfach subtrahieren und die Differenz erhalten können (das Ergebnis muss eventuell noch formatiert werden, je nachdem, wonach Sie suchen).


1
2018-02-22 21:49



Ich habe die Datumsformatmaske angewendet, wie in meiner Frage erwähnt, aber ohne Wirkung. - Sathya♦


Dieser Fehler bedeutet etwas, dass die Zellenformatierung durcheinander ist. Ich bin nicht in der Lage, es zu reproduzieren (3.1, Ubuntu 9.10) (es funktioniert einfach nur für mich), aber Sie sollten den "echten" Inhalt der Zelle überprüfen, wie es in der Bearbeitungs-Textfeld in der Symbolleiste angezeigt wird. Versuchen Sie auch, die Zellenformatierung (Rechtsklick -> Zellen formatieren ... -> Zahlen) auf einen Datumstyp zu setzen (nicht nur die Maske verwenden, sondern explizit auf eine der vordefinierten Datumsmasken setzen).


1
2018-02-22 23:05



Dies ist, was es in der Bearbeitungsbox zeigt - 19-FEB-10 18:33:20 Nur auf die vordefinierten Masken angewendet, aber immer noch Err:529 - Sathya♦
@Sathya: Welche Version hast du überhaupt? - Bobby
Ich bin auf 3.0.0 (OOO300m9, Build 9358), als Novell-Edition bezeichnet. Ich verwende Windows, nicht Linux. - Sathya♦
@Sathya: Gibt es irgendeine Chance, dass du auf eine neuere Version upgraden kannst? Dies könnte ein Fehler sein, der behoben wurde (ich habe irgendwo gelesen, dass dieser Fehler mit einem Fehler zusammenhing). - Bobby
Tut mir leid, ich kann nicht upgraden, es liegt außerhalb meiner Kontrolle. - Sathya♦