Office: (Office 2013) Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std

Helfe beim Thema Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, das zusammenrechnen der zeit die an einem Samstag geleistet wurde funktioniert solange bis sie 24 Std. überschreitet dann folgt ein 1004... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Eisregen04, 9. September 2015.

  1. Eisregen04 Neuer User

    Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std


    Hallo,
    das zusammenrechnen der zeit die an einem Samstag geleistet wurde funktioniert solange bis sie 24 Std. überschreitet dann folgt ein 1004 Laufzeitfehler.

    variablen zeit2 , zeit3 sind nur zu debug zwecken im code
    zeile f41 (ergebnis) hat das format [h]:mm bzw [hh]:mm
    "1904 Datumswerte" ist aktive
    der angezeigte wert im Überwachungsfenster 31.12.1899 02:00:00 ist an sich richtig und solten dann 26:00 ausgeben

    Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std tabelle.jpg
    Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std vb.jpg

    die Lösung zu meinem Fehler ist wahrscheinlich offensichtlicher als ich sehe Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std :confused:
    mfg
     
    Eisregen04, 9. September 2015
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    kann es sein, dass du die Zellschutz-Checkbox "gesperrt" angehakt hast für Zelle F41 und danach den Blattschutz aktiviert hast:
    genau dann erscheint der "1004-Error", egal welchen Wert man mittels
    Range("F41").Value = Wert
    speichern will. (Habe ich ausprobiert).

    Mit folgender Sequenz müsste es im Prinzip funktionieren:
    ActiveSheet.Unprotect
    Range("F41").Value = Wert
    ActiveSheet.Protect
     
    Zuletzt bearbeitet: 10. September 2015
    Exl121150, 10. September 2015
    #2
  3. Eisregen04 Neuer User
    Hallo,
    Zellschutz oder Blattschutz ist nicht aktiviert, hinzufügen des code führt zum selben Fehler.
    Mir ist allerdings noch aufgefallen das die Tages Angabe nicht mit dem Datum übereinstimmt
    B8 =DATUM(gewJahr;5;1)
    C8 =WOCHENTAG(B8)
    gewJahr ist auf dem blat mit stamdaten deklariert und 2015 eingetragen
    allerdings hängen die tage ein zurück ( bespielbild oben 1.2 = samstag richtig währ aber sonntag)
     
    Eisregen04, 10. September 2015
    #3
  4. Exl121150 Erfahrener User

    Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std

    Hallo,

    ich habe mir deine Werte im Überwachungsausdrücke-Fenster nochmals genauer angeschaut und den dazugehörigen VBA-Code.

    1) Du hast mitgeteilt, dass du das 1904-Datumssystem im Arbeitsblatt/Arbeitsmappe verwendest. In diesem System ist der 01.01.1904 00:00:00 der Nullpunkt. Datumsangaben, die davor liegen würden, sind unerlaubt.

    2) In VBA existiert dieses Datumssystem eigentlich gar nicht !!! Dort ist der 30.12.1899 00:00:00 der Nullpunkt der Datum/Zeit-Skala. Es sind Datum/Zeitangaben, die davor liegen, ohne Weiteres möglich, denn dort sind diese ab dem 01.01.0100 00:00:00 möglich (allerdings stets als Gregorianische Kalenderarithmetik!!). Da der 30.12.1899 der Tag mit der Nummer 0 ist, ist 29.12.1899 der Tag mit der Nummer -1, der 31.12.1899 der Tag mit der Nummer +1, usw.

    3) Um VBA mit dem 1904-System (des Arbeitsblattes) zu vereinen, hat sich Microsoft folgenden Pfusch einfallen lassen:
    3a) Holt man aus dem Arbeitsblatt aus einer Zelle einen Wert, der bloß ein Uhrzeitwert ist (im Bereich 0 bis 0,999999, also 00:00:00 bis 23:59:59), so wird dieser als solcher identisch übernommen. In der umgekehrten Richtung funktioniert es genauso in diesem Wertebereich.
    3b) Holt man aus dem Arbeitsblatt aus einer Zelle jedoch einen Wert, der auch einen Tages/Datums-Anteil enthält (also größer gleich 1,0), wird in der entsprechenden Date-Variablen in VBA zwar dieser Wert übernommen, aber er bedeutet jetzt plötzlich ein Datum/Zeit gemäß Punkt 2). Er ist folglich gegenüber dem Arbeitsblatt um 1462 Tage zu klein, sodass diese 1462 hinzuaddiert werden müssen, um mit dem Arbeitsblatt gleichzuziehen. Stand also in der Excel-Zelle zB. 02.01.1904 06:00:00 (formatiert mit "TT.MM.JJJJ HH:mm:ss"), so entspricht das im Standard-Format der Zahl 1,25, übernimmt man diese in VBA in eine Variable vom Typ Date, so besitzt diese auch wieder den Wert 1,25, was aber als VBA-Datum/Zeit in Wahrheit der 31.12.1899 06:00:00 ist. Erst nach Addition von 1462 hat auch diese Variable den DatumZeit-Wert 02.01.1904 06:00:00.

    4a) Du hast in deinem Makro die Date-Variable "zeit" vor der FOR-Schleife auf 0 gesetzt. Damit hast du diese Variable in Wahrheit auf den 30.12.1899 00:00:00 gestellt (im VBA-System).
    4b) Dann hast du weitere Uhrzeit-Werte aus dem Arbeitsblatt übernommen und zur Date-Variable "zeit" hinzuaddiert.
    4c) Nach Beendigung der FOR-Schleife wolltest du hoffnungsfroh diesen Summenwert zurück ins Arbeitsblatt liefern, jedoch mit der Überraschung, dass plötzlich ein Fehler ausgelöst wurde.
    4d) Die Erklärung ist, dass du fleißig im VBA-Datumsystem deine Zeiten addiert hast, damit aber am Schluss einen Datum/Uhrzeit-Wert erhalten hast, der im VBA-System völlig in Ordnung war, aber im Excel-Arbeitsblatt ungültig war, da er dort ein Datum vor dem 01.01.1904 bedeutet hätte.

    5) Um diesen Fehler zu vermeiden, musst du irgendwo im VBA-Makro die 1462 dazugeben. Am besten du setzt gleich vor der FOR-Schleife die "zeit"-Variable statt auf 0 auf 1462.

    Ich hoffe, ich konnte die überraschende Fehlermeldung klären. Man sollte daher wenn es möglich ist, das 1904-System im Arbeitsblatt meiden, wenn man gleichzeitig mit VBA arbeiten muss.
    Dafür ist das 1900-System weit pflegeleichter, zumindest ab dem 01.03.1900. Im Bereich 30.12.1899 bis 29.02.1900 (!!!) gibt es dort auch die Macke mit der Verschiebung um 1 Tag (wegen des 29.2.1900, den es leider im Arbeitsblatt gibt, aber völlig zu recht in VBA nicht gibt).
     
    Zuletzt bearbeitet: 10. September 2015
    Exl121150, 10. September 2015
    #4
  5. Eisregen04 Neuer User
    hallo,
    .... also hab ich mir mit der Umstellung aufs 1094-system 70% vom vb zerschossen Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std :mad:
    naja addieren der 1462 behebt diesen Fehler

    Danke
     
    Eisregen04, 12. September 2015
    #5
Thema:

Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std

Die Seite wird geladen...
  1. Arbeitszeitrechnung der Samstage vb fehler bei mehr als 24 std - Similar Threads - Arbeitszeitrechnung Samstage fehler

  2. Zellen sperren wenn Samstag, Sonntag oder Feiertag

    in Microsoft Excel Hilfe
    Zellen sperren wenn Samstag, Sonntag oder Feiertag: Hallo liebes Forum, wenn ich in den Spalten C, D, E ab Zeile 15-45 ein X eintragen muss, kann ich dieses X nicht eintragen wenn die Spalte A ein Samstag, Sonntag oder Feiertag ist. Frage: Wie...
  3. zuschlag Samstag

    in Microsoft Excel Hilfe
    zuschlag Samstag: Hallo es soll wenn das Datum an einen Samstag fällt einen Zuschlag von 50% geben, Datei im Anhang. Dachte an etwas wie Wenn( wochentag, falls es sowas gibt danke
  4. Samstag und Sonntag farbig im Diagramm

    in Microsoft Excel Hilfe
    Samstag und Sonntag farbig im Diagramm: Hallo Zusammen, in dem Diagramm im Anhang stehen unten die Tage vom 01.03.2022 bis 31.03.2022 als Datum. Wie bekommt man es hin das dass Datum in dem Diagramm von Samstagen und Sonntagen farblich...
  5. Datum und Anzahl Tage addieren; aber ohne Samstag und Sonntag

    in Microsoft Excel Hilfe
    Datum und Anzahl Tage addieren; aber ohne Samstag und Sonntag: Hallo, ich habe eine Zelle A4 in welchem das ein Datum steht (21.01.2013). Es existiert eine Zelle D2, welche eine Anzahl Tage enthält. Nun soll in Zelle E7 ein Datum angezeigt werden, welches...
  6. Bestelldatum plus 3 Tage ausser Freitag und Samstag

    in Microsoft Excel Hilfe
    Bestelldatum plus 3 Tage ausser Freitag und Samstag: Hallo Zusammen Neu hier und schon ein Problem Möchte ein Bestellformular erstellen. Dabei soll immer beim Öffnen das „Heute Datum“ unter Bestelltag erscheinen. Unter Lieferdatum soll dann ein...
  7. Datumsreihe ohne Datum von Samstag und Sonntag

    in Microsoft Excel Hilfe
    Datumsreihe ohne Datum von Samstag und Sonntag: Hallo zusammen, ich möchte fortlaufende Spalten / Zeilen mit einer forlaufenden, chronologisch aufsteigenden Datumsangabe ausstatten, jedoch auf das Datum von Samstag und Sonntag verzichten....
  8. Zeiten/Tage berechnen ohne Samstag und Sonntag

    in Microsoft Excel Hilfe
    Zeiten/Tage berechnen ohne Samstag und Sonntag: Hallo, hat jemand eine Idee, wie ich eine Zeitdifferenz berechnen kann unter Ausschluß der Wochenendtage? Office Version 2000
  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