Office: (Office 2016) Uhzreit in Zahl umwandeln

Helfe beim Thema Uhzreit in Zahl umwandeln in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi, finde irgendwie nichts im Netz. Ich will eine eindeutige ID Nummer erstellen aus dem heutigen Datum und der aktuellen Uhrzeit (am liebsten wär mir... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von firela112, 24. August 2018.

  1. Uhzreit in Zahl umwandeln


    Hi,
    finde irgendwie nichts im Netz.

    Ich will eine eindeutige ID Nummer erstellen aus dem heutigen Datum und der aktuellen Uhrzeit (am liebsten wär mir wenn das heutige Datum z.B. der 01.01.2018 und die Uhrzeit 14:00:00 Uhr ist folgende Zahl: 01012018140000).
    Geht das irgendwie?
    (Es muss eine Zahl sein kein Datumsformat)

    :)
     
    firela112, 24. August 2018
    #1
  2. Zahlen haben keine führenden Nullen. Von der Länge Deiner Ziffernfolge her bekommst Du das auch nicht in Long unter, das hat einen Wertebereich bis etwa 2,14 Mrd., das sind angekratzte 10 Stellen statt der gewünschten 14.

    Abbilden könnte man das als Text:
    Code:
    Wenn man auf eine ID-Funktionalität abzielt: Ein DateTime-Wert ist intern eine Zahl (Double) und benötigt weniger Byte zur Darstellung als Text, was dann nicht so unegal ist bei folgenden ID-Verwendungen.
    Zahlenfähigkeit:
    Code:
     
  3. Hi,

    wenn ichs dann so mache:
    Code:
    kommt Syntaxfehler

    (Feld Zeit_Vergabe_Zahl = Double)
     
    firela112, 25. August 2018
    #3
  4. Uhzreit in Zahl umwandeln

    hat sich erledigt

    Habe es so gelöst:
    Code:
     
    firela112, 25. August 2018
    #4
  5. Hallo,
    i ist ersatzlos überflüssig ?
    Code:
     
    gpswanderer, 25. August 2018
    #5
  6. Hallo
    hast Du es schon mit
    CDbl versucht ?
    nur mit Zeit habe ich es noch nicht versucht aber mit einem Datum/Zeit:

    CDbl(#12/1/2001#)  Ergiebt eine Zahl(Double)aus einem Datum --> 37226

    umgekehrt: cdt(cdate(37226)) gibt --> 01.12.2001

    CDbl
    (#31/12/9999 23:59:59#) ' Doublewert  2958465.99998843 grösster Wert für ein Datum
    CDbl(#01/01/0100 0:0:0#) ' Doublewert  -657434 kleinster Wert für ein Datum


    noch ein Muster:
    Code:
    ?xxd(#31/12/9999 23:59:59#)
    Daum--> 31.12.9999 23:59:59
    2958465.99998843
     
    Lanz Rudolf, 25. August 2018
    #6
  7. \@firela112,
    fragt sich wofür du das überhaupt brauchst.
    Als Zahl macht nur Sinn: yyyymmddhhnnss.
    Das geht relative einfach, aber wozu, wenn du mit der einfach Zahl zurecht kommst?

    Ich wundere mich ja immer dass bei Access nicht ein zusätzliches sinnvolles Datumskonzept nachgereicht wird.
    Aber bei den gewaltigen Entwicklungsschritten die bei Access in einem Jahrzehnt üblich sind, dauert das .....
     
    markusxy, 26. August 2018
    #7
  8. Uhzreit in Zahl umwandeln

    Wie sollte dieses "sinnvolle Datumskonzept" denn deiner Meinung nach aussehen? Oder, anders gefragt, welche konkreten Probleme hast du mit der gegenwärtigen Implementierung von Datum/Uhrzeit in Access, die durch dein "sinnvolles Datumskonzept" behoben werden würden?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  9. \@sonic,
    Der Gleitkommatyp als Basis verschwendet den Speicherplatz ist konzeptbedingt langsamer und die berechneten Ergebnisse haben Rundungs-Ungenauigkeiten.

    Ich wünsche mir zusätzlich eine UInt8 Variable als Basis.
    Konzept wie datetime2 des SQL Server wie auch in .net.
     
    markusxy, 26. August 2018
    #9
  10. Diese Schwächen der gegenwärtigen Implementierung sind meiner Meinung nach von ihren Auswirkungen her eher von untergeordneter Bedeutung. Nur um diese, eher trivialen, Probleme zu beheben, die Datum/Uhrzeit-Implementierung in Access zu ändern, wäre aus meiner Sicht kompletter Wahnsinn.

    UInt8 meint üblicherweise einen Unsigned 8-Bit Integer, also ein Byte in VBA. Wie dieser als sinnvolle Basis für eine Date/Time-Implementierung dienen soll, ist mir im Moment unklar.

    datetime2 ist mit meistens 6 Byte etwas platzsparender als die 8 Byte des Access/VBA-Date/Time-Typs und leidet (vermutlich!) nicht unter den Rundungsungenauigkeiten. Dies allein rechtfertigt nicht den Aufwand einer Ergänzung (oder gar Umstellung) der Date/Time-Implementierung in Access.

    Die Date/Time-Implementierung in .Net ist aufgrund ihres großen Funktionsumfanges natürlich super cool. - Dieser Vorteil verschwindet aber in dem Moment, in dem du die Daten zwecks Speicherung serialisieren musst. In VBA ließe sich etwas vergleichbares sicherlich implementieren und wäre durchaus sinnvoll, nicht aber bei der Integration in Access/Jet-Abfragen. Es würden also dadurch also zwei verschiedene Herangehensweise für den Umgang mit Date/Time erforderlich. - Sehr schlechte Idee.

    Fazit: Ich bin von deinem Alternativ-Konzept nicht überzeugt.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  11. \@Sonc,
    ich hab von eine Ergänzung gesprochen.
    Ich meinte natürlich einen 8Byte Integer.
    Der dann auch in 100 Nanosekunden Steps speichert.

    Hier geht es ja nicht um ein durchdachtes Konzept.
    Es macht auch keinen Sinn, sich da Gedanken zu machen.
    Wenn man was besseres will, gibts ja eh jedem Menge Möglichkeiten.

    Wie viel Aufwand das bedeutet interessiert mich nicht.
    Sonst programmieren die ja auch jeden Menge Unsinn um nach kurzer Zeit ganze Konzepte wieder in den Müll zu kippen. Was soll das für ein Argument sein wenn es um eine ergänzende Klasse geht?

    Ich weiß nur das Berechnungen Rundungsfehler haben und der Double Wert aus Basis ein ungünstiges Konzept darstellt.

    Da frage ich mich natürlich, welche Entwicklungsumgebung/Datenbank noch ausschließlich mit einem Gleitkommawert als Bais für DateTime arbeitet.

    LG M
     
    markusxy, 27. August 2018
    #11
  12. \@Markus,

    mir sind bei der normalen Verwendung von Date-Variablen noch keine dargestellten Ungenauigkeiten aufgefallen. Selbst die IAU verwendet in ihrer Sofa-Library Double-Variablen (nur halt mit anderer Epoche), um Tagesanteile zu erfassen. Und auch FreePascal sowie Delphi setzen Double-Variablen mit der gleichen Epoche wie der COM-Standard ein, um selbst noch tausendstel Sekunden exakt auszugeben.

    Was die Entwicklungsgeschwindigkeit der Database-Engine angeht, bin ich der gleichen Meinung wie Du. Man wird uns noch 10x in den nächsten 20-25 Jahren diesen alten Hut fast unverändert verkaufen; dafür sind dann die Bedienoberflächen jedoch unterschiedlich (bunt) gestaltet - Hauptsache, immer schön modern bleiben! *Smilie
     
  13. Uhzreit in Zahl umwandeln

    Wenn es dir nicht um Luftschlösser, sondern um konkrete Verbesserungsvorschläge geht, ist der Aufwand ein elementarer Faktor.

    Wir als Access Community haben heute über Access UserVoice mehr Einflussmöglichkeit auf die Weiterentwicklung von Access als jemals zuvor. Und dies nicht per se weil es diese Plattform gibt, sondern weil das Access-Team dort tatsächlich mitliest und dortige Vorschläge ernsthaft in Erwägung zieht.

    Das Access-Team ist der Access-Community gegenüber wesentlich aufgeschlossener als je zuvor. Es ist aber zur Zeit auch ein sehr kleines Team und größere Projekte, wie z.B. das Access-Web-App-Debakel, stehen komplett außer Frage. Kleinere Weiterentwicklungen, die für eine signifikante Anzahl von Usern hilfreich sind, sind aber durchaus im Bereich des Möglichen.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  14. Hallo zusammen!

    Kann ich bestätigen. Hab mal sehr viel mit Kalenderdaten und Uhrzeiten experimentiert
    und selbst bei den eingebauten Funktionen wie DateAdd Ungereimtheiten festgestellt.
    Leider finde ich die DB auf die Schnelle nicht, doch ein kleines Beispiel ist schnell gestrickt:
    Code:
    Fazit: Vor allem bei Vergleichen mit berechneten Datumswerten ist Vorsicht geboten.
     
    Marsu65, 27. August 2018
    #14
  15. \@Marsu,

    Zeitangaben sollte man für den exakten Vergleich normalisieren oder ein Epsilon verwenden. Code:
     
Thema:

Uhzreit in Zahl umwandeln

Die Seite wird geladen...
  1. Uhzreit in Zahl umwandeln - Similar Threads - Uhzreit Zahl umwandeln

  2. Exel Farbige Zahlen addieren

    in Microsoft Excel Hilfe
    Exel Farbige Zahlen addieren: Hallo an alle, folgendes Problem...ich möchte rote und blaue Zahlen zusammen zählen. Das Problem ist, dass ich eine Summenspalte für vormittags und nachmittags habe. In der Tabelle befinden sich...
  3. Sonnabende zählen

    in Microsoft Excel Hilfe
    Sonnabende zählen: Hallo, es geht um Office 2024. ich möchte von einem Startdatum in der Vergangenheit bis Heute() die Sonnabende zählen. Formeln sind nich mein Speziakgebiet. <img...
  4. X in die Zahl 1 Umwandeln

    in Microsoft Excel Hilfe
    X in die Zahl 1 Umwandeln: Moin, Ich möchte, wenn in einer Zelle ein X drin steht, das es in die Zahl 1 Umgewandelt wird. Meine Formel sieht so aus: =WENNFEHLER(SVERWEIS(AC76;'[20250310_Feiertagsplanung_1tes...
  5. In einer Zelle Zahlen erkennen und trennen

    in Microsoft Excel Hilfe
    In einer Zelle Zahlen erkennen und trennen: Guten Tag zusammen Ich habe folgende Daten in einer Zelle und muss diese in mehrere Spalten aufteilen, insbesondere benötige ich die Zahl, die hinter dem X steht PKP210SX90AOS08...
  6. Während der Eingabe überprüfen ob Zahl oder Text

    in Microsoft Access Hilfe
    Während der Eingabe überprüfen ob Zahl oder Text: Hallo, wenn ich in einem Zahlenfeld einen Text eingebe erfolgt folgende Meldung [ATTACH] Wie kann ich die Meldung abfangen um eine eigene Meldung auszugeben? Das Zahlenfeld ist mit 0 vor belegt...
  7. Spalten Sortieren nach Zahlen mit Buchstaben (1a,1b usw)

    in Microsoft Excel Hilfe
    Spalten Sortieren nach Zahlen mit Buchstaben (1a,1b usw): Hallo, ich habe hier eine Bauteileliste erstellt um diese leichter wiederzufinden. Das Problem ist, dass die Baugruppen unterteilt sind (ist ein Kartonbaubogen mit mehreren Hundert Teilen,...
  8. Inhaltsverzeichnis mit römischen Zahlen und der Rest in arabischen Zahlen

    in Microsoft Word Hilfe
    Inhaltsverzeichnis mit römischen Zahlen und der Rest in arabischen Zahlen: Hallo Zusammen, ich muss für meine Doktorarbeit ein Dokument erstellen, dass folgende Vorgaben hat: - Titelblatt - Inhaltsverzeichnis (mit römischen Zahlen) - Einleitung (Beginn mit Seite 1)...
  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