Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) (/konu-son-kayit-degerini-bir-oncekinden-ciktarak-forma-yazdirma-vba-ile.html) |
Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - toprak_tan - 20/04/2020 Herkese hayırlı haftalar, Otomasyon sisteminden saatlik kümülatif sayaç verilerini çeken Tablo1 isminde bir tablom var. Tablo1’ de yer alan “Sayac” alanına her yeni kayıt eklendiğinde, eklenen son kayıt değerini bir öncekinden çıkartarak Form1’de yer alan son kayıttaki “Üretim” sütununa hesaplatarak yazdırmak istiyorum. Fakat bu işlemi sorgu (SQL) ile değil Vba ile yapmam gerekiyor. Yapmak istediğim; Bu konuda bana yardımlarınıza ihtiyacım var, şimdiden teşekkür ederim. RE: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - accessman - 20/04/2020 dlookup ile bir öncekini çekebiliyorsanız gerisi 4 işleme kalmış demektir 30 dan çıkaracağınız 10 rakamının id değeri var mı yoksa tek kriteriniz sondan bir öncekisi olması mı eğer her satırın bir id değeri varsa o id değerine göre Dlookup ile eski değeri getirip yenisinden çıkarıp istediğiniz yere yazdırırsınız eğer id numarası otomatik ise ve hiç kesintisiz bir önceki kaydın id si bir sonrakinden bir eksik ise problem yok eğer id ler birbirini düzenli takip etmiyor ise hangi kritere göre bir öncekini bulacaksınız eğer kaydı oluştururken o anda bu işlemi yapacaksanız Dlast Dmax kullanabilirsiniz RE: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - toprak_tan - 20/04/2020 (20/04/2020, 14:02)accessman yazdı: dlookup ile bir öncekini çekebiliyorsanız gerisi 4 işleme kalmış demektir Yanıtınız için teşekkürler, Tablodaki TarihSaat alanı birincil anahtar (aynı tarih ve saat için yalnızca tek bir veri girilebilmesi için). Yani her satırın ID değeri tarihsaat alanıdır ve sürekli olarak bir saatte bir veri çekmektedir. Dmax ve Dmin komutu ile ilk ve son kayıtlar arasında işlem yaptırabildim, son ve birönceki kayıtla işlem yaptıramadım. Amacım yazılacak bir kod ile bunu sadece son kayıt çekildiğinde hesaplatmak ve forma yazdırmak. RE: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - accessman - 20/04/2020 eğer saatler birbirini düzenli takip ediyorsa "Hour (#19/04/2020 22:00:00#)" - 1 gibi bir formulde kullanabilirsiniz tabiki bu anlattıklarım Dlookup için kriter olarak kullanılacak yani dlookup("alanadı","tabloadı","where=" & Format(tarih, "\#19\/04\/2020 22\:00\:00\#") gibi bir şeyler olması lazım Kod:
"Hour (#19/04/2020 22:00:00#)" - 1 RE: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - accessman - 20/04/2020 Kod:
DATEADD(hour,-1,zaman) ama bu kadar uğraşmak yerine bir otomatik id koyun tarih alanını özelliklerden benzersiz yapın daha kolay olur bir önceki id e gidip ilgili alandan değeri alırsınız üstelik aynı tarih ve saatten sadece bir tane olur yineleme yok seçin RE: Son Kayıt Değerini Bir Öncekinden Çıktarak Forma Yazdırma (Vba İle) - berduş - 20/04/2020 Iç içe 2 sorguyla olabilir, 2. sorgu icin max(tarih) where tarih < kaydın tarihi gibi bir sorgu aktif kayittan onceki en büyük tarihli kaydın değerlerini getirebilir. Ama ancak fonksiyonla olur gibi geliyor bana |