1Danke
ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
1781
1781
EMPFEHLEN
-
Hallo,
habe mehrere Zellen mit "hh:mm:ss,000" formatiert und trage dort Zeiten Millisekunden genau ein, was in der Exceldarstellung auch noch gut funktioniert (Millisekundenaddition funktioniert).
Jetzt will ich diese Zeitangabe exakt speichern und habe folgendes versucht:
(geöffnet per Open TextDatei For Output As #FileNr)
Print #FileNr, Format(Cells(2, 4), "hh:mm:ss,000")
Problem hierbei ist, dass die Sekunden immer gerundet werden, also immer 000 Millisekunden gespeichert werden. Ein direktes Übernehmen der Zellformatierung hatte nix geändert
Habs dann direkt mal so versucht:
Print #FileNr, Format(Hour(Cells(2, 4)), "##00") & ":" _
& Format(Minute(Cells(2, 4)), "##00") & ":" _
& Format((Cells(2, 4) * 24 * 60 * 60) Mod 60, "##00") & "," _
& Right(Cells(2, 4) * 24 * 60 * 60 * 1000, 3)
Hier hatte ich dann zwar meine Millisekunden drin, die Sekunden waren aber weiterhin gerundet (also bei >499ms eben Sekunden+1) und habs dann mit fix probiert:
Print #FileNr, Format(Hour(Cells(2, 4)), "##00") & ":" _
& Format(Minute(Cells(2, 4)), "##00") & ":" _
& Format(Fix(Cells(2, 4) * 24 * 60 * 60) Mod 60, "##00") & "," _
& Right(Cells(2, 4) * 24 * 60 * 60 * 1000, 3)
Hier ist das Problem, dass aus dem von Hand eingegebenen Wert "00:00:59,000" in der Textdatei ein "00:00:58,000" wird, ändere ich diese händische Eingabe auf "00:00:59,001" habe ich das erwartungsgemäss auch in der Textdatei drin stehen.
Falls die Frage aufkommt warum ich die Sekunden berechne - mit "Second" wars auch gerundet.
Meine Frage wäre nun wie ich das exakt so wie in der Zelle sichtbar gespeichert bekomme?
Ich hoffe mir kann geholfen werden (mehrzellig würd ichs eigentlich nicht machen wollen, nur wenn es wirklich keine einzellige Lösung gibt).
(btw., nutze Office 2010)
-
07.07.11 12:46 #2
Wieso willst du etwas, was bereits formattiert ist, nochmal formattieren?

Versuchs mal so:
Code :1
Print #FileNr, Cells(2, 4).Text
Jeder Fehler, aus dem wir lernen, ist ein Erfolg...
...Aber mach' nicht den Fehler, nicht aus deinen Fehlern zu lernen.
-
Ohman, Wald und Bäume... hab mich wohl durch das Ergebnis irritieren lassen, welches mit
Print #FileNr, Cells(2, 4)
gespeichert wird (Bruchteil des Tages)
Ähnliche Themen
-
Variablen Ohne Form übernehmen!
Von fanta0815 im Forum PHPAntworten: 26Letzter Beitrag: 03.07.07, 14:43 -
vb6 - Textdatei speichern ohne den letzten Zeilenumbruch.
Von Morpheling im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 14.06.07, 16:44 -
ohne PHP CGI und CO aus einer textdatei lesen
Von JamesT im Forum Coders TalkAntworten: 1Letzter Beitrag: 11.05.07, 10:49 -
Formularinhalte in eine DB übernehmen, ohne sie per Mail zu verschicken
Von Shiro-san im Forum PHPAntworten: 2Letzter Beitrag: 18.07.05, 11:55 -
vba Code ohne Änderung in dll übernehmen
Von the_hulk im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 22.07.04, 12:20





Zitieren
Login





