Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

Zeitangabe in hh:mm:ss darstellen
#1
Hi,

ich habe folgendes Problem.

Ich habe ein Excell Sheet in dem Minuten und Sekunden nicht in hh:mm:ss dargestellt werden, sondern als Zahl und Text.

Beispiel:

in Zelle A steht zum Beispiel:
1m  3s
3m  15s
7m  1s

es wäre natürlich schön wenn er diese Werte in Zelle B als hh:mm:ss darstellen würde, also
00:01:03
00:03:15
00:07:01

Ist das möglich?

vielen lieben Dank
Antworten Top
#2
Hallo,

versuche es mal hiermit...



Code:
=TEXT("00:"&LINKS(A3;SUCHEN("m";A3)-1)&":"&TEIL(A3;SUCHEN("s";A3)-2;2);"hh:mm:ss")
Antworten Top
#3
Hallo,

=(TEIL(A1;1;SUCHEN("m";A1)-1)*60+WECHSELN(TEIL(A1;SUCHEN(" ";A1)+1;9);"s";""))/60/60/24

Zahlenformat der Zelle(n): [h]:mm:ss

Gruß Uwe
Antworten Top
#4
Da es 7 solche Kombinationen gibt (h hm hms hs m ms s):

=--(
WENN(ISTZAHL(SUCHEN("h";A1));WECHSELN(TEIL(A1;SUCHEN("h";" "&A1)-2;2);"h";":");"0:")&
WENN(ISTZAHL(SUCHEN("m";A1));WECHSELN(TEIL(A1;SUCHEN("m";" "&A1)-2;2);"m";":");"0:")&
WENN(ISTZAHL(SUCHEN("s";A1));WECHSELN(TEIL(A1;SUCHEN("s";" "&A1)-2;2);"s";" ");"0 "))


Entweder mit TEXT umschließen oder als hh:mm:ss formatieren.

Prämissen: Maximal 2stellige einzelne Zeitzahlen, außerdem: Reihenfolge hms darf abweichen.

Ab Excel 2019:
=--TEXTKETTE(WENN(ISTZAHL(SUCHEN({"h"."m"."s"};A1));WECHSELN(TEIL(A1;SUCHEN({"h"."m"."s"};" "&A1)-2;2);{"h"."m"."s"};":");"0:"))

Stimmt noch nicht!
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#5
Hi,

mein Vorschlag für ein aktuelles Excel:

=LET(x;TEXTTEILEN(A1;" ";;WAHR);z;--LINKS(x;LÄNGE(x)-1);b;RECHTS(x;1);m;XVERWEIS(b;{"h";"m";"s"};{3600;60;1};;0;1);SUMME(z*m/86400))

x: Zahl-Buchstaben-Kombination
z: Zahl
b: Buchstabe
m: Multiplikator (Anzahl Sekunden)

Die Summe ergibt dann ein echtes Exceldatum. Entsprechend muss die Zelle dann mit hh:mm:ss formatiert sein.

Dabei ist es egal wie viele Ziffern jeder Teil hat oder in welcher Reihenfolge die Teile kommen. Ja die einzelnen Teile können sogar mehrfach vorkommen oder entfallen. Wichtig ist nur, dass die einzelnen Teile durch ein oder mehrere Leerzeichen getrennt sind und zwischen Ziffer und Zahl kein Leerzeichen steht.

Man könnte das Ganze auch noch auf Tage erweitern. Dazu müssten nur die beiden Vektoren beim XVerweis mit "d" und 86400 ergänzt werden.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#6
=SUMMENPRODUKT(WENN(ISTZAHL(SUCHEN({"h"."m"."s"};A1));TEIL(0&A1;SUCHEN({"h"."m"."s"};0&A1)-2;2))*2,5/60^{1.2.3})

auch altes Excel (Zahlen 2stellig maximal, Reihenfolge h:m:s (Auslasser erlaubt) notwendig, Leerzeichen statt ZEICHEN(160))

Falls doch noch Fehler: Hatte keinen Bock, noch mehr zu testen. Hier 2021/365/Web:

=LET(y;0&A1;z;SUCHEN({"h"."m"."s"};y);SUMME(WENN(ISTZAHL(z);TEIL(y;z-2;2))*2,5/60^{1.2.3}))
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#7
vielen lieben Dank an euch alle, für eure Mühe und Zeit! Funktioniert super
Antworten Top
#8
Odeer

PHP-Code:
=--SUBSTITUTE("00:"&LEFT(A1;LEN(A1)-1);"m"&CHAR(160)&" ";":"
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#9
snb: Zu beschränkt gesehen (es geht doch - unausgesprochen - um die 7 möglichen Kombinationen). 
Und ZEICHEN(160) ist nicht korrigiert (hat da nichts zu suchen).
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#10
In https://www.clever-excel-forum.de/Thread...#pid273876
sehe ich keine 7 Kombinationen.

Dann wäre ein UDF spwieso sinnvoller (auch International):

Code:
Function F_snb(c00)
   On Error Resume Next
   sn = Split(c00)
   F_snb = TimeSerial(0, 0, Val(sn(0)))
   F_snb = TimeSerial(0, Val(sn(0)), Val(sn(1)))
   F_snb = TimeSerial(Val(sn(0)), Val(sn(1)), Val(sn(2)))
End Function
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste