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.
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.
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?
|