Access Te Aylık Gün Dağıtımı Yapmak İstiyorum Bir Türlü Yapamadım.

1 2 3
21/03/2021, 19:56

isouysal

Teşekkür ederim.
İşime çok yarayacak.Bekliyorum.
21/03/2021, 20:36

berduş

Aklıma takılan 2 şeyi sorayım
1 - günler tablosundaki ay alanındaki sayılar o aydaki gün sayısından fazla olabilir mi?
Yani diyelim şubat ayındayız, şubat 28 gün, örneğin arif uz adlı kişi için Ay alanına 30 girilebilir mi?
2 - diyelim ki siz 40 yazmışsınız tüm gün satırlarının toplamının 40 olduğu ama hâlâ elde dağıtılması gereken sayı olabilir mi bu durumda ne yapılacak
21/03/2021, 21:15

isouysal

1. - günler tablosunda ay alanındaki sayılar o ayda ki gün sayısından fazla olabilir. yani aynı kişiye çift randevu verilebilir.
2. - benim sorunumda burada ;gün satırlarında 1. günün toplamı 40 olduğunda 2.güne devam edecek toplan 40'a ulaştığında 3.gün...son güne kadar devam edecek.
son gün eksik olabilir çünkü kalan kadar olacak.
not: 40 rakamı sabit değil ;
22/03/2021, 14:51

berduş

aşağıdaki kodu dener misiniz?
ay sütununda 30dan büyük veri olmadığından çift döngülüyü deneyemedim
Function GunDagit()
CurrentDb.Execute "DELETE FROM Günler"
SqlEkle = "INSERT INTO [günler] ([Tarih], [Grup No], [Ad Soyad],[Kota Ton],[Ay]) " & _
"SELECT Date(),[Grup No],[Adı ve Soyadı],[Kota Ton],[Eylül] FROM [eylül];"
CurrentDb.Execute SqlEkle
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("günler", dbOpenDynaset)
With rs
Do Until .EOF
RndSay = CInt(rs(7))
z = 7
GünDagit = 0
.Edit
Do While GünDagit < RndSay
z = z + 1
t = 1 'zMax=38
If z > 38 Then
z = 8
t = t + 1
End If
Mx40 = Nz(DSum("[" & z - 7 & "]", "günler"), 0)
If Mx40 < 40 Then
rs(z) = t
GünDagit = GünDagit + 1
End If
Loop
.Update
.MoveNext
Loop
End With

MsgBox "Posa Bölme İşlemi Tamamlanmıştır."
rs.Close
db.Close
End Function
22/03/2021, 18:01

isouysal

Hocam elinize sağlık istediğim gibi olmuş.
Herşey için teşekkür ederim.
Kolay gelsin.
İyi günler dilerim.
22/03/2021, 19:10

berduş

açıkçası şöyle bir endişem var gün dağıtma işleminde; tüm sütunlar 40 olursa ve hâlâ elimizde dağıtılması gereken sayı varsa ne olacak?
henüz öyle bir durum için döngüden çıkılmasını sağlayacak kod eklenmemiştir
1 2 3