Office: (Office 2003) Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden

Helfe beim Thema Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen Ich bin schon einige Tagen am googlen finde aber keine passende Lösung. Ich habe für unsere Jugendgruppe ein kleines Wettkampfprogramm... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von User, 3. August 2013.

  1. Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden


    Hallo zusammen

    Ich bin schon einige Tagen am googlen finde aber keine passende Lösung. Ich habe für unsere Jugendgruppe ein kleines Wettkampfprogramm geschrieben, wo auch Zeiten erfasst werden. Jetzt möchten die Jugendlichen auch die Zehntelsekunde erfassen. Was wie ich gelesen habe Access nicht kann.

    Weil das Programm bereits fertig ist, möchte ich den Arbeitsaufwand auch so klein wie möglich halten.

    Gedacht habe ich mir folgendes in der Tabelle ein extra Zahlenfeld mit einer stelle Eingabe von 0-9 für das erfassen der zehntel Sekunde .

    In der Abfrage würde ich diesen zehntelwert durch 10 teilen um zb. 9 wären dann 0,9 Sekunden.

    Mein bestehendes Zeit Lang Feld ( hh:mm:ss ) möchte ich in der Abfrage über einen Ausdruck in Sekunden umrechnen.

    Kann mir einer sagen wie ich das hin bekommen kann ? zu diesem Wert, würde ich dann die 0,9 addieren und im Hintergrund die Platzierung vornehmen.

    In der Ausgabe ( Formular Platzierung, möchte ich dann schon gerne den Wert zb. 60,9 Sekunden wieder ausgeben als ZeitLang 00:01:00,9 und hier sehe ich mein zweites Problem, hat von euch schon
    einmal einer so was änliches gemacht ?

    Danke für Hilfe und Tipps
    Gruß
    Jürgen

    :)
     
  2. Hallo Jürgen,
    mir scheint es fast einfacher zu sein, statt der ganzen Hin- und Herrechnerrei drei Felder (falls noch Stunden zu erfassen sind, auch 4) anzulegen: Minuten, Sekunden, Zehntel. Daraus kannst du eine Gesamtzeit addieren minuten*60 + Sekunden + Zehntel/10 und für die Platzierung verwenden.
    maike
     
    maikek, 5. August 2013
    #2
  3. Moin Jürgen.
    Maike, Deinem Ansatz wage ich zu widersprechen.
    Das ist doch relativ einfach, wenn Du bedenkst, dass die Datum/Uhrzeit Werte intern Fließkommazahlen sind, mit dem Wert des Tages vor und dem der Stunden (als Teil des Tages) nach dem Komma.
    Eine Uhrzeit von 12 Uhr Mittag (ohne Tagesangabe) ist also repräsentiert durch den Wert 0,5.
    Um als von 0,5 auf 12 zu kommen, musst Du den Zeit-Wert mit 24 multiplizieren. Weiters mal 60 ergibt die Minuten und noch einmal mit 60 malgenommen die Sekunden. Also: Code:
    Die Darstellung im Zeitformat mit Teilen von Sekunden ist nicht trivial. In Access jedenfalls ... wie das auch in diesem Thread diskutiert wurde. Während es in VB.Net einen Format-Platzhalter für Millisekunden gibt, fehlt der in Access.
     
    hcscherzer, 5. August 2013
    #3
  4. Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden

    \@hcscherzer
    Aber Jürgen würden ja schon Zehntel reichen *wink.gif*

    Vielleicht hilft Dir ja Saschas Post (mit Beispieldatenbanken) dabei.

    HTH
     
  5. Hallo Hans-Christian,
    genau deshalb würde ich ja das Zeitformat umgehen, zumal es mir hier auch nicht zwingend notwendig scheint.
    maike
     
    maikek, 5. August 2013
    #5
  6. Hallo
    Danke für die vielen Antworten. Ich hatte ja geschrieben, dass es ein bereits fertiges Programm ist und ich mit möglich wenig Aufwand die Umsetzung Zehntelsekunde umzusetzen ohne bereits vorhandene Felder zu löschen. Darum mein Lösungsansatz mit dem umrechnen in Sekunden, ist es möglich das ( hh:mm:ss ) Feld in Sekunden zu schreiben ??

    Danke für Hilfe und Tipps
    Gruß
    Jürgen
     
  7. Ist es Dir möglich zu multiplizieren?
    Dann siehe Beitrag #3.
     
  8. Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden

    Wenn Du den Beitrag studiert hättest, auf den ich verweise, dann wäre Dir evtl. klar geworden, dass es auch schon bei den Zehntel scheitert ... sicher geht es über die Umwandlung in eine Zeichenkette ... aber eben nicht trivial.
     
    hcscherzer, 5. August 2013
    #8
  9. \@hcscherzer
    Smiley übersehen?

    Wenn Du den Thread verfolgt hättest, dann hättest Du vmtl. gesehen das ich mich dran beteiligt habe *wink.gif* (bitte nicht wieder übersehen)

    Ist schon klar das es auch um die Darstellung geht, für die Berechnung von Zehntel reicht aber der Double-Wert des VBA-Timer aus.
    Hat auch niemand behauptet.
     
  10. Danke Eberhard
    Das in Beitrag #3 hatte ich übersehen werde es morgen ausprobieren, in SQL Abfrageeditor einen Ausdruck erstellen ([Zeitfeld]*24*60*60) müsste ja dann Sekunden ergeben plus die 10/ Tel Sekunde wie in meinem Beitrag # 1 geschrieben 60,9 wie bekomme ich denn für den Benutzer im Formular oder Bericht dann wieder aus der zb. 60,9 das Format 00:01:00,9

    Danke u. Gruß
    Jürgen
     
  11. Aufwand misst sich auch daran, was Du mit diesen Zeiten alles anfangen willst:
    Willst Du diese nur aufschreiben (speichern) und anzeigen und vielleicht sortieren, dann genügt Textverarbeitung. Eine Format-Anweisung erzeugt Text:
    Code:
    Willst Du aber Zeiten auch summieren (multiplizieren?) oder Durchschnitte berechnen, dann geht das mit Texten nicht, sondern dann wird eine Umrechnung in Zahlen notwendig (DateTime-Werte sind ja intern Double, also Zahlen).
    Für die Darstellung im gewünschten Format müssten dann die Zahlen wieder in Texte überführt werden, da Access kein Standardformat für Zeiten mit Sekundenbruchteilen kennt, was eine interne Hin- und Her-Interpretation ermöglicht.
    Und dann soll man sich besser davor hüten, wiederholt UmrechnungenText-Zahl-Text-... vorzunehmen, weil das
    a) in Summe Aufwand bedeutet (kostet Zeit) und
    b) Ungenauigkeiten verschärft (begleitet auch durch Probleme in der Verwendung von Gleitkommazahlen), so dass die Zehntel am Ende verschwinden könnten.
     
  12. Hallo Eberhard
    Danke für die sehr ausführliche Schilderung, ich muss schon bei einigen Wettkämpfen die Zeit vom 1 und 2 Durchlauf addieren, hatte mir es so gedacht das Zeitfeld in Sekunden umrechnen zb. 1 Durchlauf 60,9 plus 2 Durchlauf 80,4 vom Ergebnisse 141,3 möchte ich aufsteigend sortieren ( Platzierung ).

    So wie ich es aus deiner Erläuterung verstanden habe, wird das ja nicht funktionieren ? Oder habe ich das falsch verstanden . Wie würde eine funktionierende Lösung nach deiner Meinung aussehen ?

    Danke für eine Info
    Gruß
    Jürgen
     
  13. Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden

    Bei notwendigen Berechnungen ist es regelmäßig hilfreich, die vorhandenen Eingaben in eine Zahl zu überführen und diese in der Tabelle zu speichern. Das könnte ein Double-Wert aus dem vorhandenen Zeitwert addiert um die Zehntelsekunden sein, aber auch wie von Dir angedacht eine Darstellung in Sekunden mit Dezimalstellen.

    Mit diesen Zahlen kann man dann rechnen, auch kaskadierende Rechnungen ausführen. Für die Darstellung im gewünschten Format brauchst Du dann eine Formatierungsfunktion.
    In einer Abfrage lässt man dann beide nebeneinander laufen: Zahl / Berechnung daraus einerseits und Formatierung auf diesen Ausdruck andererseits für eine Darstellung (z.B. im Formular).
     
  14. Hallo Eberhard

    Habe ich richtig verstanden, das du das Zeitfeld ( hh:nn:ss ) nach der umrechnung in Sekunde in einem Feld mit Double-Wert speichern würdest ?
    oder sollte ich generell drei Felder anlegen eins für Minute, eins für Sekunde und ein drittes für die zehntelsekunde.

    Für mich ist es sehr wichtig, bevor ich mit dem Umbau beginne und später feststelle, dass ich auf dem Holzweg bin.

    Kurz noch angemerkt, es werden keine Stundenwerte benötigt somit könnte man auf ( hh ) verzichten. Auch bei den Minuten werden keine werte über 45 Minuten erfasst.

    Danke für Info bzw Hilfe
    Gruß
    Jürgen
     
  15. Ein DateTime-Feld ist intern bereits Double. Das kann man sich ganz schnell visualisieren:
    Code:
    Die Ganzzahlen stehen für die Tage seit dem 30.12.1899, die Dezimalanteile sind Bruchteile eines Tages:
    ein Tag ... 1
    eine Stunde ... 1 / 24
    eine Minute ... 1 / (24 * 60)
    eine Sekunde ... 1/ (24 * 60 * 60)
    eine Zehntelsekunde ...

    So eine Zahl ist also immer da. Formate sind jetzt nur verschiedene Darstellungen ein und des selben Wertes, ohne am Wert an sich etwas zu ändern. Besonders am Datum wird das deutlich:
    Code:
    Das Problem ist nun: In einem DateTime-Feld mit der Format-Eigenschaft "hh:nn:ss" kann Access die zugehörige Zahl für sich interpretieren und speichern und verarbeiten und umgedreht diese Zahl wieder als Format darstellen.
    Für die Einbeziehung der Sekundenbruchteile gibt es aber kein Format von Access. Daher würde man auf ein eigendefiniertes Format ausweichen müssen, das mit der Format-Anweisung erzeugt wird, und da entsteht zwingend ein Text, der eben nicht von Access interpretiert werden kann.
    Jetzt könnte man technisch zum vorhandenen Feld (das die Erfassung von Sekunden zulässt) den Dezimalanteil der Zehntel hinzuaddieren.
    Da wäre aber vmtl. die Wahrscheinlichkeit höher, bei der Rückrechnung fehlerhafte Werte zu bekommen.

    Dagegen wird die Umrechnung in Sekunden bei den genannten Bereichen deutlich übersichtlicher und sicherer sein.

    Hier müsste man trennen in drei Anwendungsbereiche:
    1) Erfassung durch User
    2) Speicherung + Verarbeitung
    3) Darstellung (Ausgabe für User)

    1) ... richtet sich nach vorhandenen Abläufen und Vorlieben, es muss verständlich und bequem sein, vielleicht auch unter Nutzung von Eingabehilfen (Timepicker). Man könnte auch das normale Zeitfeld nutzen und ein Feld für die Zehntel optisch anfügen.

    Ziel sollte es aber sein, aus den Eingaben mehrerer Felder einen Zahlenwert in einem Feld zu erhalten, um Punkt 2) vernünftig behandeln zu können.

    2) ... Ein Wert und der möglichst als Zahl (schlanker als Text) ist dringend zu bevorzugen. Warum?
    Eine Datenbank hat nicht immer nur wenige Hunderte Datensätze in den Tabellen, sondern (besonders wenn die DB erfolgreich wird oder schon ist) viele und potentiell sehr viele Datensätze (Millionen?).
    Wenn man nun die erfasste Zeit filtern, sortieren, verknüpfen, aggregieren oder gruppieren will, ist ein nutzbarer Index auf dem Feld für die Performance ungeheuer hilfreich. Müsste man hier aber mehrere Felder erst zusammenrechnen, entfällt eben durch den Schritt Berechnung auf ein Tabellenfeld eine Indexnutzung.

    3) ... erzeugt dann für den User etwas zum Angucken, was er versteht (Anzeige in Formular oder Druckausgabe per Bericht), und besser nur zu solchen Anlässen. Die Maschine braucht das nicht.

    Diese Dreiteilung verdeutlicht auch einen maßgeblichen Unterschied zu einer Exceltabelle (in der überwiegend verwendeten Form), wo an einer Stelle eingegeben, gespeichert, verarbeitet und angezeigt wird.
     
Thema:

Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden

Die Seite wird geladen...
  1. Zeit Lang ( hh:mm:ss ) umrechnen in Sekunden - Similar Threads - Zeit Lang umrechnen

  2. Industriezeit in normale Zeit

    in Microsoft Excel Hilfe
    Industriezeit in normale Zeit: Hallo ihr Lieben, Ich habe versucht einen passenden Beitrag gefunden aber empfand keinen so wirklich passend für mein anliegen. Aus diesem Grund versuche ich es mal so. Ich habe eine...
  3. Zeit an dem mehrere Arbeitsplätze belegt sind

    in Microsoft Excel Hilfe
    Zeit an dem mehrere Arbeitsplätze belegt sind: Guten Tag Da ich leider nicht sehr viel Erfahrung mit Excel habe, suche ich hier Hilfe, ob mir jemand bei meinem Problem helfen kann. Ich soll berechnen an wie vielen Tagen, Stunden und Minuten,...
  4. Zeiten wie berechnen

    in Microsoft Excel Hilfe
    Zeiten wie berechnen: Hi, Spalte F soll von Spalte H subtrahiert werden. Sodas ich in Spalte I sehen kann, wie viel Zeit ich das Kind länger oder kürzer in der Kita lasse. Ihr seht z.B. in der Zeile 35 kommt Excel...
  5. Daten aus anderer Tabelle zwischen Zeiten einfügen (Office 365)

    in Microsoft Excel Hilfe
    Daten aus anderer Tabelle zwischen Zeiten einfügen (Office 365): Hallo zusammen, ich hatte früher viel mit Excel zu tun, bin aber seit ein paar Jahres etwas eingerostet. Ich wollte mir eine Tabelle erstellen, in der ich aus den stündlichen Strompreisen der...
  6. Zeit Berechnung mit mehreren kriterien (Datum/Uhrzeit)

    in Microsoft Excel Hilfe
    Zeit Berechnung mit mehreren kriterien (Datum/Uhrzeit): Hallo zusammen, leider weiss ich nicht wie ich die Start- und Endzeit von "Datum und Uhrzeit" mit mehreren kriterienin über Summewenns einbauen kann. Hab hier im Forum nach einer Lösung geschaut...
  7. Runden bei Zeiten

    in Microsoft Excel Hilfe
    Runden bei Zeiten: Hallo, ich habe folgendes Problem, wenn ich Zeiten Runden auf 2 Kommastellen gerne hätte kommt immer 00:00,00 heraus =MIN(B4:B9)/100*95 das ist die bisherige Formel, das wird zwar richtig...
  8. Temperatur-Kurve über längere Zeit -> Achsbeschriftung

    in Microsoft Excel Hilfe
    Temperatur-Kurve über längere Zeit -> Achsbeschriftung: Hallo! Ich habe von einer Wetterstation die Werte mehrere Temperatursensoren. Pro Stunde ein Wert, also 24 Messwerte pro Tag. Die X-Achs-Werte sehen so aus: 22.12.2005 13:00 (Datum & Zeit)...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden