Discussion:
Nettoarbeitstage in Acces berechnen
(zu alt für eine Antwort)
Manfred
2005-04-06 09:39:01 UTC
Permalink
Manfred Zingl

Wünsche guten Tag zusammen
Ich habe eine Access Datenbank. in Ihr gibt es 3 Datumsfelder: Bestelldatum
, Lieferdatum , Mahndatum das Lieferdatum ist pro Produkt festhinterlegt und
nicht Pauschal, das Problem ist, es Bezieht sich immer auf Arbeitstage!
Wie kann ich Wochenende rausrechnen bzw Ignorieren, quasi wie in Excel,
für vorschläge bin ich sehr dankbar

mit vielen Grüssen
Manfred
PS: bin keine grosse Leuchte in Access
--
no risk no fun
Mark Doerbandt
2005-04-06 09:46:47 UTC
Permalink
Hallo,

Manfred:

Bitte verwende hier Deinen vollen (Vor- und Zu-) Namen. Danke.
Post by Manfred
Wie kann ich Wochenende rausrechnen bzw Ignorieren, quasi wie in Excel,
Microsoft schlägt Dir vor, dafuer die Excel-Funktion zu nutzen:

http://support.microsoft.com/default.aspx?scid=kb%3Bde%3BD40402

Eine Alternative ist eine Hilftabelle mit den Arbeitstagen des Jahres.

Gruss - Mark
--
Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beiträge senden.
Stefan Wirrer
2005-04-06 12:18:04 UTC
Permalink
Hallo Manfred,
Post by Manfred
Bezieht sich immer auf Arbeitstage!
Wie kann ich Wochenende rausrechnen bzw Ignorieren, quasi wie in Excel,
in der KnowHow-MDB sind zu diesem Thema einige Funktionen enthalten
--
Gruß
aus München

Stefan

***@volke-muc.de
---------------------------------------------------------------------
KnowHow-MDB: http://www.freeaccess.de/
Access-FAQ: http://www.donkarl.com/AccessFAQ.htm
Infos für Neulinge in den Access-Newsgroups:
http://www.doerbandt.de/access/Newbie.htm
Ahmed Martens
2005-04-06 13:03:04 UTC
Permalink
Hallo Manfred,
Post by Manfred
Manfred Zingl
Wünsche guten Tag zusammen
Ich habe eine Access Datenbank. in Ihr gibt es 3 Datumsfelder: Bestelldatum
, Lieferdatum , Mahndatum das Lieferdatum ist pro Produkt festhinterlegt und
nicht Pauschal, das Problem ist, es Bezieht sich immer auf Arbeitstage!
Wie kann ich Wochenende rausrechnen bzw Ignorieren, quasi wie in Excel,
für vorschläge bin ich sehr dankbar
eine von mir mit Hilfe dieser NG erstellte Formel:

Function AnzWochenTage(ByVal datBeginn As Date, ByVal datEnde As Date,
ByVal Def_Tage As Integer) As Long
'1 = Kalendertage (Mo-So)
'2 = Werktage (Mo-Sa)
'3 = Arbeitstage (Mo-Fr)


Select Case Def_Tage

Case 1 'Kalendertage
AnzWochenTage = DateDiff("d", datBeginn, datEnde) + 1

Case 2 'Werktage
AnzWochenTage = DateDiff("d", datBeginn, datEnde) _
- DateDiff("ww", datBeginn, datEnde) * 1 + 1 + (Weekday(datBeginn) = 1)

Case 3 'Arbeitstage
AnzWochenTage = DateDiff("d", datBeginn, datEnde) _
- DateDiff("ww", datBeginn, datEnde) * 2 + 1 _
+ (Weekday(datBeginn) = 1) + (Weekday(datEnde) = 7)

End Select

End Function

Gruß Ahmed
--
Antworten bitte nur in der Newsgroup.
Michael Alexander
2005-04-06 13:08:30 UTC
Permalink
Hallo Manfred!
Post by Manfred
Manfred Zingl
Wünsche guten Tag zusammen
Bestelldatum
, Lieferdatum , Mahndatum das Lieferdatum ist pro Produkt festhinterlegt und
nicht Pauschal, das Problem ist, es Bezieht sich immer auf Arbeitstage!
Wie kann ich Wochenende rausrechnen bzw Ignorieren, quasi wie in Excel,
Ich nehme an, die möchtest das Lieferdatum um die Anzahl an Wochenendtagen
in die Zukunft verschieben, also die Differenz in Tagen zwischen
Bestelldatum und Lieferdatum um die Anzahl der in dem Zeitraum befindlichen
Wochenendtagen verlängern um eine Lieferzeit von z.B. 30 "echten"
(Werk-)Tagen zu haben.

Folgend fnc berechnet dir die reinen Arbeitstage in einem Zeitraum:

Function AnzWochenTage(ByVal datBeginn As Date, ByVal datEnde As Date) As
Long
'von Urs Villiger
'Anzahl der Werktage ohne Samstag und ohne Sonntag (ohne
Feiertagsberücksichtigung)
AnzWochenTage = DateDiff("d", datBeginn, datEnde) - DateDiff("ww",
datBeginn, datEnde) _
* 2 + 1 + (Weekday(datBeginn) = 1) + (Weekday(datEnde) = 7)
End Function

Somit ergibt

DateDiff("d", Bestelldatum, Lieferdatum)-AnzWochenTage(Bestelldatum,
Lieferdatum)

die Anzahl der Wochenendtage in diesem Zeitraum

Gruß
Michael

Loading...