İleri Tarih Belirleme

1 2 3
21/05/2023, 01:21

berduş

DateAdd("m",1,[baslamatarihi])+Choose(DateAdd("m",1,[baslamatarihi]) Mod 7+1,2,1,0,1,0,1,0)  <== gün ekleme işini bu satır yapıyor
DateAdd("m",1,[baslamatarihi])  <== bu kısım giriş tarihine 1 ay ekliyor
DateAdd("m",1,[baslamatarihi]) Mod 7 <== bu kısım  1 ay eklenmiş  giriş tarihinin haftanın hangi gününe denk geldiğini buluyor
  • DateAdd("m",1,[baslamatarihi]) Mod 7 = 0 ise Cumartesi
  • DateAdd("m",1,[baslamatarihi]) Mod 7 = 1 ise Pazar
  • ......
  • DateAdd("m",1,[baslamatarihi]) Mod 7 = 6 ise Cuma
Choose(DateAdd("m",1,[baslamatarihi]) Mod 7+1,2,1,0,1,0,1,0)
choose girilen sayıya göre hangi elemanı getireceğini gösteren bir kod 1'den başlar eleman sayısı kadar seçenek sunar
diyelim ki 1 ay ekledikten sonra DateAdd("m",1,[baslamatarihi]) Mod 7=0  ile o günün cumartesi olduğunu bulduk choose işlevi 1'den başladığı için 1 ekledik
gerisi hangi güne kaç gün ekleneceği
siz
salı ise çarşamba
perşembe ise cuma
cumartesi/pazar ise pazartesi olacak diğer günlere dokunulmayacak dediğiniz için choose ile seçimi ona göre yaptırdım
choose(gün,2,1,0,1,0,1,0) buradaki sayılar aşağıdaki düzenlemeyi sağlamak için
  • cumartesi ise +2 gün
  • pazar ise      +1
  • pazartesi ise  +0
  • salı ise  +1
  • çarşamba ise  +0
  • perşembe ise  +1
  • cuma ise  +0
bu açıklamaya göre gerisini kendiniz düzenlersiniz
iyi çalışmalar

eğer sadece pazar pazartesi olacaksa
DateAdd("m",1,[baslamatarihi])+Choose(DateAdd("m",1,[baslamatarihi]) Mod 7+1,2,1,0,1,0,1,0) yerine
DateAdd("m",1,[baslamatarihi])+iif(DateAdd("m",1,[baslamatarihi]) Mod 7=1,1,0) yazılabilir
21/05/2023, 13:21

karaayhan

hocam ellerinize sağlık detaylı anlatım için ayrica teşekkür ederim
21/05/2023, 13:28

berduş

rica ederim
iyi çalışmalar
1 2 3