Office: (Office 2010) Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage

Helfe beim Thema Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich muss verschiedene Zyklen von Fälligkeiten berechnen. Immer ausgehend von einem letzten fälligen Termin. Die Vielzahl ist recht hoch... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Unklar01, 17. August 2018.

  1. Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage


    Hallo zusammen,
    ich muss verschiedene Zyklen von Fälligkeiten berechnen.
    Immer ausgehend von einem letzten fälligen Termin.
    Die Vielzahl ist recht hoch (glaube ich zumindest).
    (Einige werden es bemerken, es stammt aus einer Gesamtaufgabe,
    ich muss es getrennt machen sonst schaffe ich den gesetzten Termin kommenden Dienstag nicht)

    folgende Zyklen muss ich berechnen:
    - täglich
    - Montags, kein FT
    - Donnerstags, kein FT
    - 1. Arbeitstag des Jahres, kein WE oder FT
    - 1. Arbeitstag des Monats, kein WE oder FT
    - 3. Arbeitstag des Monats
    - 7. Arbeitstag des Monats, kein WE oder FT
    - 3. Arbeitstag des Monats, kein WE oder FT
    - 1. und 15. Arbeitstag des Monats, kein WE oder FT
    - 15. des Monats, kein WE oder FT
    - Quartalsende 1.1, 1.4, 1.7, 1.10, kein WE oder FT

    (WE=Wochenende, FT=Feiertag)
    Es verschiebt sich wenn notwendig immer auf den nächsten möglichen Wochentag.

    Ich habe in der angehängten Beispielbank bereits verschiedene Module enthalten, ich weiß leider nicht wie, oder ob ich sie überhaupt dazu verwenden kann. Ursprünglich dienten die der Feiertagsberechnung.
    Ich habe aber eine zweite Feiertagstabelle (Berlin) eingefügt die ich dazu nutzen will.

    Das ganze soll immer berechnen ob ein Bericht bezogen auf heute noch aktuell ist, oder bereits neu ermittelt werden muss.
    Die Vielzahl der Berichte die hier überwacht werden sollen macht das notwendig.

    Ich wäre SEHR dankbar wenn mir jemand dabei helfen könnte.

    :)
     
    Unklar01, 17. August 2018
    #1
  2. Du müsstest klären, wie denn überhaupt berichtet wird. Ist der Donnerstag ein Feiertag, fällt dann der Bericht auf den Mittwoch oder auf den Freitag oder gibt es ihn dann garnicht?

    PS: mit einer Kalendertabelle, die neben einem fortlaufenden Datum zumindest die Arbeitstage ausweist (z.B. als Ja/Nein-Feld), ist dann unter Berücksichtigung der zu definierenden Regel das Ermitteln des Datums ein Kinderspiel.

    PS: im Anhang einige Beispiele mit Parameterabfragen, die Deinen Anforderungen vermutlich entgegenkommen.
     
  3. \@Nouba,
    coole Kalendertabelle.
    Damit wird wirklich jede Datumberechnung zum Kinderspiel.

    Edit:
    Außerdem auch schön zu sehen, wie die Profis alle Regel der Normalisierung ignorieren!
     
    markusxy, 18. August 2018
    #3
  4. Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage

    Hallo

    habe jetzt den Link von Noba nicht angesehen !
    in meiner Doc s. Fusszeile unten rechts

    Seite 321
    11.25 Erster oder Letzer Arbeitstag eines Monat’s mit berücksichigung der Feiertage

    Ab Seite 322 findest Du auch einiges zum Thema z.B.
    11.24 Anzahl Arbeistage zwichen zwei Datum (anz. Tage ohne Sa, So, Feiertage)


    Seite 323
    11.27 Feiertagberechnung
     
    Lanz Rudolf, 18. August 2018
    #4
  5. Hallo an alle Mitstreiter,
    vielen Dank für Eure Hilfe.
    Ich habe mit wie Ihr sicher gesehen habt die halbe Nacht um die Ohren geschlagen, toll wenn man kurzfristig feste Vorgaben für die Fertigstellung bekommt und einen das bis in die Koje begleitet. Schlaf, äh wassndas?

    Ich habe mir Eure Vorschläge noch nicht angesehen, mache ich aber gleich.
    Einige von Euch haben mir schon sehr oft geholfen, DANKE !
     
    Unklar01, 18. August 2018
    #5
  6. \@Unklar,

    ich habe die Version um laufende Arbeitstage im Monat erweitert. Somit kann man das Top-Prädikat in den Abfragen eliminieren.

    Die Abfragen habe ich nicht erneuert -aber ich denke mit der Nummer des Arbeitstags im Monat kommst Du sicherlich leicht zurecht.

    PS: im Code der alten Version hat sich noch ein Fehler eingeschlichen. In PopulateDimensionTable muss das Argument ForYear und nicht Year heißen.
     
  7. Hallo Nouba,
    Du bist ja echt der Knüller ! Weist Du was ich mir gerade wünsche?
    Das ich das hier genau wie Du verstehen würde.
    Absolut super von Dir !

    Stellt sich mir gerade die Frage, wie schraube ich das in meine Bank?
    Ich hatte ja die Möglichkeit über ein KombiFeld auszuwählen welcher Zyklus
    zum tragen kommen soll. Anhand der Zyklustabelle war angegeben welche Formel verwendet werden soll.
    Wie bringe ich der Bank nun bei, welche Abfrage ihr Ergebnis in die TblBericht in das Feld "faellig" übergibt?

    Ich kann jedes Datum mit Deiner Lösung ermitteln, aber wie automatisiere ich das?
    Könntes Du mir in meiner Beispieldatenbank nur ein Beispiel rein bringen, die anderen schraube ich dann selber rein, wenn ich das verstehe. Denke aber schon.
     
    Unklar01, 19. August 2018
    #7
  8. Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage

    Hallo markusxy,
    hast Du eine bessere Idee das ganze umzusetzen?
    Momentan kann ich nur auf ein Ergebnis hin arbeiten, Schönheit kommt später.
     
    Unklar01, 19. August 2018
    #8
  9. \@Unklar01,
    ich hab mich mit deinem Thema nicht beschäftigt,
    da dir aus meiner Sicht einfach zu viele Basics für die Aufgabe fehlen.

    Aber abgesehen davon, ist Nouba wohl einer der Besten im Forum.
     
    markusxy, 19. August 2018
    #9
  10. Das "Geheimnis" liegt darin zu unterscheiden, was Tabellen der Stammdaten, die dann auch den Regeln von Datenmodellierung und Normalisierung unterliegen sollten aus bekannten Gründen, und Hilfstabellen, die parallel zum Datenmodell existieren und einfach Berechnungen erleichtern sollen, sind. Abfragen als native Datenbanktechnik kommen nun mal mit Tabellen bestens zurecht.

    Wie auch Nouba zeigt, wird man Inhalte von solchen Tabellen im Stück zusammenhängend berechnen, z.B. für ein Kalenderjahr. Datensatzweise Editierungen und Löschungen machen keinen Sinn, also dürfte auch das Risiko für die Speicherung von berechneten Werten wie Anfüge-, Änderungs- und Löschungsanomalien praktisch nicht bestehen. Falls man etwas ändern müsste (=> Kalenderumstellung auf Trump-Kalender, neue Feiertage usw.) würde man komplett löschen und komplett neu füllen.

    Warum das Ganze?
    - Für ein Datum wie den heutigen 19.08.2018 würde man einmalig berechnen, dass das ein Sonntag im August ist und dass es kein Feiertag und kein Arbeitstag ist. Einmalig berechnen ist weniger Aufwand als jedesmalig berechnen. Das dürfte nachvollziehbar sein.
    Typischerweise ändert sich ein Kalender sehr selten, so dass auch Papierkalender funktionieren, die drei Jahre vor dem eigentlichen Jahr gedruckt wurden.
    - Inhalte von Tabellen kann man indizieren. Wenn man also Tagesdaten auf Monate gruppieren will, findet man dann in der Kalendertabelle nicht nur den Monat, sondern kann für den gefundenen Mionat für die Gruppierung auch dessen Index nutzen. Wer Indexnutzung verstanden hat, wird auch hier zustimmen.

    So bringt dann Nachschlagen in einer sinnvoll gedachten und vorbereiteten Tabelle Performancevorteile gegenüber einem jedesmaligen Berechnen. Nachvollziehen kann man das in dem hier hinterlegten Beispiel: Grundlagen - SQL ist leicht (3) - Kalendertabelle


    Ein paar Gedanken gab es schon mal.
    Vorhanden sein von Dateien überwachen, Berichtsüberwachung
    Aber von vorne anfangen und weitgehend auf wieder das Gleiche zu kommen ist auch schön und zeitfüllend. Für best practice gibt es nicht soooo viele Varianten.
     
  11. Nun, ich weiß ja nicht genau, wie Deine Strategie aussieht. Ich lasse deshalb bei Auswahl eines Berichtsdatensatzes in einem Listenfeld einfach die entsprechende Abfrage öffnen.

    PS:das Feld Is_Workday ist nun eigentlich überflüssig - ich war nur zu faul zum Löschen.
     
  12. Hallo,

    https://onedrive.live.com/?id=CCB635...B6359C11E2936D

    enthält u.a. "Acc_praktische_Hilfsmasken_2018_02_03.mdb"
    Diese Datei enthält u.a. eine Kalendertabelle "tblAlleTage" die für jeden Tag zwischen 1990 und 2100 einen Datensatz enthält. Die Tabelle enthält u.a. für jedes Bundesland ein Feld, das anzeigt ob der Tag ein Feiertag ist oder nicht. Zudem sind natürlich die Wochentagsnr, Wochennr, u.ä. Infos vorhnden. Für die nächsten 2 - 3 Jahre ist auch ausgefüllt, für jedes Bundesland ein Feld, das anzeigt ob der Tag ein Ferientag ist oder nicht.
    Ein Jahreskalender zeigt die Verwendung ...
    mfg Klaus
     
    KlausObd, 19. August 2018
    #12
  13. Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage

    Ach, da gibt es auch die gute alte KnowHow-DB. Freeaccess hat sich ja als Website verabschiedet.
     
  14. Danke Nouba,
    Du hast Dir richtig Arbeit gemacht.
    Du beziehst Dich bei der Berechnung immer auf den heutigen Tag, oder?
    Ich müßte aber das letzte Fälligkeitsdatum verwenden, denn von dort aus berechnet er (soll er) das nächste fällige Datum berechnen.
    Dann schaue ich:
    1. ich setze alle Felder "aktuell" auf "nein"
    Die Berechnung bezieht sich auf das letzte Reportdatum und ermittelt das neue Fälligkeitsdatum.
    ist das nächste Datum kleiner gleich heute -> ist der Report nicht mehr gültig. "aktuell" bleibt auf "nein"
    ist das nächste Datum größer als heute -> ist der Report noch gültig.
    "aktuell" wird auf "ja" gesetzt.
    Bei zwei Fälligkeiten im Monat müßte er zwei Berechnungen machen.
    Befinde ich mich nach dem 1. aber noch vor dem 15. und
    befinde ich mich am 15. und danach.

    Alle nicht mehr gültigen Reports lese ich aus und schaue ob es den neuen Report schon gibt. (der wird automatisch, oder von Hand erstellt)
    Wenn ja bekommt er auch den Haken in "aktuell".
    Wenn eine neu erzeugte Datei gefunden wird setze ich das Datum der errechneten Fälligkeit in das Feld letzte Fälligkeit.
    Das was übrig bleibt wird als nicht aktuell markiert.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Unklar01, 19. August 2018
    #14
  15. Hi Unklar,

    ich beziehe mich auf die vier Steuerelemente auf der rechten Seite des Formulars,deren Inhalte auch geändert werden können. Nur der sogenannte Tägliche Bericht, verwendet den eingestellten Tag.Der Rest ist ja vom Jahr und Monat bzw. vom Quartal abhängig.

    In Deine Berechnungen bin ich nicht eingestiegen. Aber wenn diese stimmen, kannst Du ja das entsprechende Datum zerlegen und entsprechende Parameter für jede Abfrage setzen. Ob dabei die Parameter dann über Steuerelemente oder über VBA-Code weitergereicht werden, ist im Prinzip egal.
     
Thema:

Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage

Die Seite wird geladen...
  1. Zeitzyklen berechnen, nur Werktage, oder mit oder ohne Feiertage - Similar Threads - Zeitzyklen berechnen Werktage

  2. Berechnung pro angefangener 1000

    in Microsoft Excel Hilfe
    Berechnung pro angefangener 1000: Hallo zusammen, ich habe einen Punktekatalog welcher sich aus bestimmten Werten ansammelt. Pro 1000 Punkte werden 40€ Kosten fällig. Wie ich es berechne, wenn ich 1045 Punkte habe, ist mir...
  3. Berechnungen ?

    in Microsoft Excel Hilfe
    Berechnungen ?: Hallo und einen schönen guten Tag, ich habe ein Problem beim Felder berechnen. Vielleicht kann ich Euch mal die Datei anhängen, denn wenn ich das versuche zu erklären, kommt nichts dabei heraus....
  4. OEE Berechnung auf Stunde

    in Microsoft Excel Hilfe
    OEE Berechnung auf Stunde: Hallo Zusammen, in meiner Beispieldatei werden zu Teilenummern Stückzahlen vorgegeben.Man kann in einer Stunde bis zu 5 verschiedene Teiletypen eingeben. Der Tag ist in 3 Schichten unterteilt. Es...
  5. Power BI / Servicegrad in Prozent berechnen

    in Sonstiges
    Power BI / Servicegrad in Prozent berechnen: Hallo Liebes Forum, Ich würde gerne eine dritte Spalte für den Servicegrad in Prozent (an gelb markierte Stelle) erstellen. [ATTACH] Bei Excel bin ich folgendermaßen vorgegangen....
  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. Berechnung erst ausführen, wenn alle Zellen ausgefüllt sind

    in Microsoft Excel Hilfe
    Berechnung erst ausführen, wenn alle Zellen ausgefüllt sind: Hallo Zusammen! Ich habe schon wieder ein Problem, dass ich seit Stunden nicht lösen kann. Ich möchte zu einer Formel in einer Zelle eine Zweite hinzufügen. Das Ziel ist, dass jede Zelle...
  8. EXCEL Berechnung bitte um Hilfe

    in Microsoft Excel Hilfe
    EXCEL Berechnung bitte um Hilfe: Hallo, wer kann mir helfen. Ich habe unterschiedliche 16 Anfangstermine und unterschiedliche 25 Forderungsbeträge und 2 Teilzahlungen im Verlauf der 16 Anfangstermine erhalten sowie einen festen...
  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