automatisch Zeitformat ohne ":" zu schreiben

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

w33zel
Beiträge: 3
Registriert: Mo, 27.12.2010 23:28

automatisch Zeitformat ohne ":" zu schreiben

Beitrag von w33zel »

Hi

ich habe folgendes Problem.

Ich habe eine Tabelle in die ich zwei Zeiten eintrage, z.B.

A1 - 7:30
B1 - 8:00
C1 - Ergebnis 0,50 (Ausgabe muss als Dezimalzahl sein)

Soweit alles kein Problem, nun ist der Mensch ja von Natur aus faul :lol: und ich habe keine Lust immer diesen ":" da zwischen zu schreiben.

Ich will also "730" eingeben und Calc soll dann ein "7:30" daraus machen.

Normal sind die Felder ja mit "HH:MM" formatiert, dann bekomme ich aber 00:00 als Ausgabe.
Habe dann ##:## probiert, hier ist die Ausgabe "7:30" nur ist das Format dann Zahl und nicht Zeit und das Endergebnis ist irgendwie Murks

Meine Frage ist also, wie setze ich das um ^^

Ich hoffe es ist alles verständlich :)

PS: Für Excel habe ich folgenden Code bekommen, der genau das macht was ich haben will, aber in OO leider nicht funzt

Code: Alles auswählen

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim x As Variant
   Dim y As String
   Dim z As String
   
   On Error Resume Next
      If Target.Column = 1 Then 'Spalte A
         x = Target.Value
         y = CStr(x)
         z = Left(y, Len(y) - 2) & ":" & Right(y, 2)
      
         Target.Value = TimeValue(z)
      End If
End Sub
Benutzeravatar
knueppju
*
Beiträge: 13
Registriert: Di, 12.10.2010 23:05

Re: automatisch Zeitformat ohne ":" zu schreiben

Beitrag von knueppju »

Hi,

falls Du es wieder mittels eines Makrocode gelöst haben möchtest, wärest Du im Basic-Forum besser aufgehoben.
Wenn Dir auch eine Formel genügt, dann hätte ich diesen Vorschlag.

Bei dem von Dir verwendeten Zellenformat ##":"## versuch es mal mit dieser Formel in C1, wenn in A1 die Start- und in B1 die Endzeit steht.

Code: Alles auswählen

=REST((LINKS(B1;LÄNGE(B1)-2)/24+RECHTS(B1;2)/1440-LINKS(A1;LÄNGE(A1)-2)/24-RECHTS(A1;2)/1440);1)*24
Habe bewusst auch die Funktion Rest gewählt, falls mal Zeiten über Mitternacht hinaus berechnet werden müssen.

Viel Erfolg, auch in 2011
Wenn nicht besonders erwähnt sind Lösungsvorschläge vorab von mir getestet worden.
Feedback, egal ob negativ oder positiv wird gerne gelesen.

Freundliche Grüße
Jürgen
w33zel
Beiträge: 3
Registriert: Mo, 27.12.2010 23:28

Re: automatisch Zeitformat ohne ":" zu schreiben

Beitrag von w33zel »

Ahoi

Ob mit Makrocode oder nicht ist mir eig. egal, Hauptsache ist es funzt.

Habe deine Formel mal probiert und siehe da, sie funzt sowohl in Excel als auch in OO :shock:
eine Lösung die ich nun gar nicht mehr erwartet hätte ^^ Ich hab zwar keinen Plan warum das funzt aber ich bin dir sehr dankbar :)
Für eine kleine Erklärung was die Formel macht, wäre ich dir noch dankbarer (falls mal jemand fragt) :D

Gruß w33zel
Benutzeravatar
knueppju
*
Beiträge: 13
Registriert: Di, 12.10.2010 23:05

Re: automatisch Zeitformat ohne ":" zu schreiben

Beitrag von knueppju »

Hi w33zel,

nun es ist sicher noch einfacher zu verstehen wenn Du das Format auf "Standard" belässt.
Durch das benutzerdefinierte Zahlenformat wird ja nur die Anzeige verändert, tatsächlich steht in A1 730 und in B1 800
auch wenn Du nur 7:30 bzw. 8:00 siehst.

Mit LINKS(B1;LÄNGE(B1)-2) wird ermittelt ob es eine einstellige oder zweistellige Stundenzahl ist.
B1 zuerst, weil das Ende vom Start abgezogen wird, durch die Division 24 erreichst Du den für Calc/Excel richtigen Wert.
(24 weil der Tag 24 Stunden hat)
Somit haben wir nun den Stundenwert, fehlt noch der Minutenwert.
Das ist etwas einfacher weil die Minuten immer zweistellig sind, nur muss dieser Wert noch durch 1440 dividiert werden.
(=24 Stunden * 60 Minuten)
Jetzt ist die Endzeit komplett und es muss das ganze nochmal für die Startzeit gemacht werden.
Wenn nicht besonders erwähnt sind Lösungsvorschläge vorab von mir getestet worden.
Feedback, egal ob negativ oder positiv wird gerne gelesen.

Freundliche Grüße
Jürgen
w33zel
Beiträge: 3
Registriert: Mo, 27.12.2010 23:28

Re: automatisch Zeitformat ohne ":" zu schreiben

Beitrag von w33zel »

Hi knueppju

besten dank für Erklärung, ich denke ich habs sogar verstanden :D

Nun denn, wenn es keine erwähnenswerten Vorteile gibt die ganze Sache mit Macrocode zu lösen, werde ich mit deiner Lösung wahrscheinlich gut leben können :D
In allen anderen Fällen melde ich mich eben noch mal :>
popofz
***
Beiträge: 53
Registriert: Mi, 12.01.2011 16:53

Re: automatisch Zeitformat ohne ":" zu schreiben

Beitrag von popofz »

Hallo Gerd

Du hast recht bei EXCEL klappt das sehr gut mit Autokorrektur. Ich habe bei meinem Arbeitgeber immer das "++" verwendet und hatte nie Probleme. OOo_Calc hat da ein Problem. Ich habe mehrere Versuche gemacht mit allen möglichen Kombinationen aber leider ohne Erfolg.
Kennt sonst noch jemand einen Trick wie man OOo-Calc austricksen kann?

Mfg
Peter
WIN 7 64bit, WIN XP, OO 4.1.1
Antworten