(14-02-2011, 02:39)aspuzu21 demiş ki: Selamlar.Bu çalışmayı şu şekilde değiştirmek istersek ne yapılması gerekir acaba? (izin başlangıç tarihi + Gün sayısı) + (pazar günleri sayısı + resmi tatiller sayısı) = izin dönüş tarihi.
Resmi tatilleri ve pazar günleri izin gün sayısına eklenecek.Bunu yaparsak resmi tatilleri Access' e nasıl tanıtırız?
Resmi tatiller ve hicri tatilleri göz önünde bulunduran function kullanılarak sorunuz çözümlenebilir.
Public Function ResmiTatil(ByVal Tarihim As Date) As Boolean
Dim Gun_Ay As String
Gun_Ay = Format(Tarihim, "ddmm")
If Weekday(Tarihim) = 1 Or Weekday(Tarihim) = 7 Or _
Gun_Ay = 101 Or Gun_Ay = 2304 Or Gun_Ay = 1905 Or Gun_Ay = 2810 Or Gun_Ay = 2910 Or Gun_Ay = 3008 Then
ResmiTatil = True
Else
ResmiTatil = False
End If
End Function
Public Function DiniTatil(ByVal Tarihim As Date) As Boolean
Dim Gun_Ay As String
Gun_Ay = Tarihim
Gun_Ay = HicriTarih(Gun_Ay)
Gun_Ay = Format(Gun_Ay, "ddmm")
If Gun_Ay = 3009 Or Gun_Ay = 110 Or Gun_Ay = 210 Or Gun_Ay = 310 Or Gun_Ay = 912 Or Gun_Ay = 1012 Or Gun_Ay = 1112 Or Gun_Ay = 1212 Or Gun_Ay = 1312 Then
DiniTatil = True
Else
DiniTatil = False
End If
End Function
Function HicriTarih(MiladiTarih As String) As String
Dim MiladiSakla As Date
Dim HicriÇevir As String
Calendar = vbCalGreg
MiladiSakla = CDate(MiladiTarih)
Calendar = vbCalHijri
HicriÇevir = CStr(MiladiSakla)
HicriTarih = Format(HicriÇevir, "dd.MM.yyyy")
Calendar = vbCalGreg
End Function