Sonraki Kayıtta Veri Değişikliği

1 2
17/11/2020, 11:03

fenerli6774

Formumda txtSutunno ve txtDurumu adında hücrem var. Bu hücrelerdeki veri değişikliğine göre bir sonraki kayıtta şarta değişiklik yapılmasını istiyorum. Değişiklik cümlesini nasıl yazabilirim.

txtSutunno "A" ve txtDurumu "Aktif" olduğu zaman
bir sonraki kayıtın Sutunnosu "B" ise Sayfadurumu değerinin "BOŞ" olmasını istiyorum.


If txtSutunno = "A" Then
If txtDurumu = "Aktif" Then
If Dlookup ("Sutunno", "tblKayitbilgileri", "[KayitID]=" & [KayitID] + 1) = "B"
Then
"Sayfadurumu", "tblKayitbilgileri", "[KayitID]=" & [KayitID] + 1) = "Boş"
txtDurumuiki = "Boş"
End If
End If
End If

Yukarıda yazdığım kodu düzeltebilirmisiniz. Teşekkür ederim.
17/11/2020, 12:30

ozanakkaya

Merhaba, örnek uygulama eklerseniz örnek üzerinde inceleme yapılabilir.
17/11/2020, 12:55

berduş

1 - ya zaten son kayıtta ise?
2 - KayitID birer birer artıyor görünüyor ya aradaki 1 kayıt silindiyse ve bir sonraki KayitID + 2 ise?
17/11/2020, 23:36

fenerli6774

Sizin dediğinizin kurgusunu tasarladım ama benim boyumu aşıyor. Bu iş tamamen size kalır çok şey istemiş olurum. Gerçi diğer işlerde sizin emeğiniz.
Aynı sayfanosuna ait A,B,C,D,E sütunlarından herhangi birine Öğrenci yazıldığında sütundurumu ([Durum]) "Aktif" oluyor. (Kaydet butonuna basınca).

Dolayısı ile Sayfanosu kullanıldığı için ilgili sayfanosunun [Sayfadurumu] nunda "Aktif" olması lazım. Yani işlem yapılan Sütunun Sayfano suna sahip diğer ID lerin bulunup bu IDlerin sayfadurumlarının da "Aktif" olması gerekiyor.
Kodlar (Defter durumları butonunda denemeye çalıştım)
Örnek ektedir.
Teşekkür ederim.
17/11/2020, 23:49

berduş

ilk mesajınızla son mesajınız farklı şeyler söylüyor o nedenle soruyu tam olarak anlamadım,
şimdi diyelim ki kayıtID=10 olan kaydın SutunDurumunu aktif yaptık bu kaydın SayfaNosu =2 ise sayfanosu 2 olan tüm kayıtların mı SutunDurumunu Aktif yapacağız? örnek kayıtlar üzerinden açıklar mısınız?
  If Defterdurumu = "Aktif" Then
CurrentDb.Execute "Update tblKayitbilgileri set [Sayfadurumu]='Aktif' where [Sayfano]='" & txtSayfano & "'"
End If
18/11/2020, 00:17

fenerli6774

Öncesinde
ID =1 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Boş Sutunno=A Durumu="Ayrıldı"
ID=2 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Boş Sutunno=B Durumu="Ayrıldı"
ID=3 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Boş Sutunno=C Durumu="Boş"
ID=4 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Boş Sutunno=D Durumu="Boş"
ID=5 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Boş Sutunno=E Durumu="Boş"

Sayfano=1 de C,D,E sütunları boş olduğu için Sayfadurumu="Boş" durumdadır. C,D,E sütunlarından birine öğrenci kaydedebilirim. "C" sütununa öğrenci kaydedersem; Kayıt butonuna basınca "Durumu" alanı "Aktif" oluyor. Dolayısı ile başka bir öğrenci kaydederken Sayfano=1 in kullanımda olduğunu belirtmek için, Defterdurumları butonuna basınca Sayfano=1 lerin durumunun "Aktif olması gerekiyor. Butona basınca aşağıdaki gibi gibi olacak.
ID =1 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Aktif Sutunno=A Durumu="Ayrıldı"
ID=2 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Aktif Sutunno=B Durumu="Ayrıldı"
ID=3 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Aktif Sutunno=C Durumu="Aktif"
ID=4 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Aktif Sutunno=D Durumu="Boş"
ID=5 Defterno=1 Defeterdurumu="Boş" Sayfano=1 Sayfadurumu=Aktif Sutunno=E Durumu="Boş"
İlk durum ile son durum arasındaki fark
C sütununun Durumu "Aktif"
Sayfano=1 lerin Sayfadurumu="Aktif"

Teşekkür ederim.

İlk yazdığım mesaj kendi çalışmamdı. Belki farklı ve daha anlaşılır bir yolu vardır. Diye ne yapmak istediğimi yazdım 2. mesajda.
Teşekkürler.
1 2