RE: Satır Ve Sütun Koşullu Değerlendirme - berduş - 26/06/2021
aşağıdaki kodu dener misiniz?Dim GSayi As Integer
Dim GTarih As Date
For GSayi = 1 To 30
GTarih = DateAdd("d", GSayi - 1, DateSerial(Year(Date), 7, 1))
CurrentDb.Execute "update tbl_PERSONEL set Tarih" & GSayi & "= '' " 'where SICILNO=" & rs(0)
Controls("Tarih" & GSayi & "_Etiket").Caption = Format(GTarih, "dd mmm")
Next GSayi
' Exit Sub
Dim rs As ADODB.Recordset
Set db = CurrentDb
Set rs = New ADODB.Recordset 'db.OpenRecordset("tbl_IZINLER") 'myTable is a MS-Access table created previously
txtSQL = "SELECT SICILNO, IZINBASLANGICTARIHI, IZINBITISTARIHI " & _
"FROM tbl_IZINLER order by SICILNO;"
rs.Open txtSQL, CurrentProject.Connection, 3, 1
'populate the table
rs.MoveLast
rs.MoveFirst
'Debug.Print rs.Fields.Count
Do While Not rs.EOF
' Debug.Print (rs(0)) 'myField is a field name in table myTable
For GSayi = 1 To 30
GTarih = DateAdd("d", GSayi - 1, DateSerial(Year(Date), 7, 1))
If GTarih >= rs(1) And GTarih <= rs(2) Then CurrentDb.Execute "update tbl_PERSONEL set Tarih" & GSayi & "='X' where SICILNO=" & rs(0)
Next GSayi
rs.MoveNext
Loop
RE: Satır Ve Sütun Koşullu Değerlendirme - temre - 27/06/2021
Çok teşekkür ederim.
Harika çözüm.
Re: Satır Ve Sütun Koşullu Değerlendirme - feraz - 27/06/2021
Bende başka türlü yapmıştım.Tarihler vs.. otomatik geliyordu işinize yarar belki.
Ama mausun tekerleğini oynatınca formdaki id felan değişiyor ama kodlara çalışmıyor aramada ve alttaki kayıtlara gitmelere tıklayınca kod çalışıyor.
![[Resim: do.php?img=11113]](https://resim.accesstr.net/do.php?img=11113)
https://resim.accesstr.net/do.php?img=11113
Private Sub Form_Current()
Dim basTarih, bitisTarih, i As Byte, fark As Integer
If Me.ID = "" Or IsNull(ID) Then Exit Sub
If Me.ID = DLast("ID", "tbl_PERSONEL") Then Exit Sub
If IsNull(Me.SICILNO.Value) Or Me.SICILNO.Value = "" Then GoTo son
basTarih = Dlookup ("IZINBASLANGICTARIHI", "tbl_IZINLER", "[SICILNO]=" & Me.SICILNO.Value)
bitisTarih = Dlookup ("IZINBITISTARIHI", "tbl_IZINLER", "[SICILNO]=" & Me.SICILNO.Value)
If IsNull(basTarih) Or basTarih = "" Then GoTo son
If IsNull(bitisTarih) Or bitisTarih = "" Then GoTo son
fark = CLng(bitisTarih) + 1 - CLng(basTarih)
For i = 1 To 30
Controls("Tarih" & i & "_Etiket").Caption = basTarih - 1 + i
Controls("Tarih" & i).Value = "X"
If i = fark Then Exit For
Next
For i = i To 30
Controls("Tarih" & i & "_Etiket").Caption = basTarih - 1 + i
Next
Exit Sub
son:
For i = 1 To 30
Controls("Tarih" & i & "_Etiket").Caption = Empty
Controls("Tarih" & i).Value = Empty
Next
End Sub
Private Sub txtsicilNo_Change()
Dim say As Integer, rs As Object
say = DCount("[SICILNO]", "tbl_PERSONEL", "[SICILNO]=" & Val(txtsicilNo.Text))
If say > 0 Then
Set rs = Me.Recordset.Clone
rs.FindFirst "[SICILNO] = " & Val(Me.txtsicilNo.Text) & ""
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End If
Set rs = Nothing
End Sub
RE: Satır Ve Sütun Koşullu Değerlendirme - temre - 27/06/2021
(27/06/2021, 01:35)feraz yazdı: Bende başka türlü yapmıştım.Tarihler vs.. otomatik geliyordu işinize yarar belki.
![[Resim: do.php?img=11113]](https://resim.accesstr.net/do.php?img=11113)
https://resim.accesstr.net/do.php?img=11113
Private Sub Form_Current()
Dim basTarih, bitisTarih, i As Byte, fark As Integer
If Me.ID = "" Or IsNull(ID) Then Exit Sub
If Me.ID = DLast("ID", "tbl_PERSONEL") Then Exit Sub
If IsNull(Me.SICILNO.Value) Or Me.SICILNO.Value = "" Then GoTo son
basTarih = Dlookup ("IZINBASLANGICTARIHI", "tbl_IZINLER", "[SICILNO]=" & Me.SICILNO.Value)
bitisTarih = Dlookup ("IZINBITISTARIHI", "tbl_IZINLER", "[SICILNO]=" & Me.SICILNO.Value)
If IsNull(basTarih) Or basTarih = "" Then GoTo son
If IsNull(bitisTarih) Or bitisTarih = "" Then GoTo son
fark = CLng(bitisTarih) + 1 - CLng(basTarih)
For i = 1 To 30
Controls("Tarih" & i & "_Etiket").Caption = basTarih - 1 + i
Controls("Tarih" & i).Value = "X"
If i = fark Then Exit For
Next
For i = i To 30
Controls("Tarih" & i & "_Etiket").Caption = basTarih - 1 + i
Next
Exit Sub
son:
For i = 1 To 30
Controls("Tarih" & i & "_Etiket").Caption = Empty
Controls("Tarih" & i).Value = Empty
Next
End Sub
Private Sub txtsicilNo_Change()
Dim say As Integer, rs As Object
say = DCount("[SICILNO]", "tbl_PERSONEL", "[SICILNO]=" & Val(txtsicilNo.Text))
If say > 0 Then
Set rs = Me.Recordset.Clone
rs.FindFirst "[SICILNO] = " & Val(Me.txtsicilNo.Text) & ""
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End If
Set rs = Nothing
End Sub
Teşekkür ederim Sn.feraz
Örneğinizden faydalanacağım.
Saygılar.
RE: Satır Ve Sütun Koşullu Değerlendirme - feraz - 27/06/2021
Rica ederiz abey.Kolay gelsin.
RE: Satır Ve Sütun Koşullu Değerlendirme - berduş - 27/06/2021
Rica ederim
Iyi çalışmalar
Not: çalışmada önce personel tablosundaki tüm izin tarihleri siliniyor, istenirse sadece belirli bir doneminki de silinebilir.
Not2: siz doğrudan 30 gün için ayarlamışsınız ama aya gore 28-31 arası olması gerekmez mi?
|