Ariel Mikołaj Gasek

Ariel Mikołaj Gasek Global Control Tower
Manager, Jabil
Global Services
Poland

Temat: OBLICZANIE RÓŻNICY DNI ROBOCZYCH POMIĘDZY DATAMI

Witam,

Mam problem z liczeniem dni roboczych pomiędzy datami. Problem polega na tym że mam w jednej małej tabeli daty dni świątecznych. Z kalkulacji dni chciałbym dodatkowo wyrzucić dni świąteczne i nie wiem jak to zrobić. Czy ktoś może wie coś na ten temat?

Podam przykład:

Data początkowa 25/10/2010
Data końcowa 5/11/2010
Różnica dni 12
Różnica dni roboczych 9
Z pominieciem świąt 8 ( z pominięciem 1/11/2010)

Chciałbym zbudować funkcję w Visual Basicu i chyba już ją mam, w excelu działa:

Sub LICZ_DNI_SW()
Dim START_DATE, END_DATE As Date
Dim LICZNIK, LICZBA_DNI, KALENDARZ, KOREKTA As Integer

'kalendarz to liczba rekordów w tabelce z dniami świątecznymi, tabelka zawiera daty
KALENDARZ = Application.WorksheetFunction.CountA(Range("B:B"))
START_DATE = Cells(2, 4)
END_DATE = Cells(2, 5)
LICZBA_DNI = 0
KOREKTA = 0

For LICZNIK = 2 To KALENDARZ
If START_DATE <= Cells(LICZNIK, 2) And END_DATE >= Cells(LICZNIK, 2) Then
LICZBA_DNI = LICZBA_DNI + 1
Else
LICZBA_DNI = LICZBA_DNI
End If
Next

Cells(2, 8) = LICZBA_DNI


End Sub


Jeśli ktoś wie jak takiej funkcji użyć w MS Access będę wdzięczny. Chciałbym aby funkcja dla dwóch dat sprawdzała po kolei każdy rekord w tabeli ze świętami i zliczała mi ilość dni świątecznych między datami.

Pozdrawiam i dzięki

konto usunięte

Temat: OBLICZANIE RÓŻNICY DNI ROBOCZYCH POMIĘDZY DATAMI

musisz mieć tabelkę z datami z zakresu od start do stop, tabelkę z okresami świątecznymi

jako kwerenda kw_okres

select count(*) as ile
from tab_dni left join tab_swieta on tab_dni.data = tab_swieta.data
where tab_swieta.data is null
and tab_dni between [start] and [stop]

taka kwerenda parametryczna zwraca ci ilość dni pomiędzy datami z pominięciem okresów świątecznych, w kodzie VBA można ją wykorzystać np. tak

dim dni as long
dni = currentproject.connection.execute ("EXEC kw_okres #2010-01-01#, #2010-12-31#").fields(0).value

tak, wiem voodoo ;)
Ariel Mikołaj Gasek

Ariel Mikołaj Gasek Global Control Tower
Manager, Jabil
Global Services
Poland

Temat: OBLICZANIE RÓŻNICY DNI ROBOCZYCH POMIĘDZY DATAMI

Ok, ciekawe query ale teraz przejdźmy na następny level. Takich tabel, kwerend z datami start,stop mam dziesiątki bo baza danych zawiera mi wszystkie aktywności systemowe.

Tak wiec będę musiał mieć osobną kwerendę dla każdej takiej pary dat i liczonego TAT'u? (turn around time) chciałem to zrobić funkcją żeby ją wkleić w każdym polu gdzie liczę taką różnicę.

Wypali?
Ariel Mikołaj Gasek

Ariel Mikołaj Gasek Global Control Tower
Manager, Jabil
Global Services
Poland

Temat: OBLICZANIE RÓŻNICY DNI ROBOCZYCH POMIĘDZY DATAMI

A jakbym w VB te wszystkie święta z tabeli wciągnoł do Varianta i następnie sprawdził je szystkie odnośnie daty początkowej i końcowej?

konto usunięte

Temat: OBLICZANIE RÓŻNICY DNI ROBOCZYCH POMIĘDZY DATAMI

można napisać funkcję w VBA do wykorzystania wprost z kwerendy aceessowej

środek funkcji już masz

Następna dyskusja:

Obliczanie różnicy czasu




Wyślij zaproszenie do