Merhaba. Herkese iyi geceler. Yapmak istediğim ana tablom da kayıtlı verilerden arasından yinelenen değerleri silmek, ancak bu verilerinde en büyük tarihli sinin tablom da kalmasını, silinmemesini istiyorum. Forumdan öğrendiğim kadarı ile bir sorgu hazırladım ancak başarılı olamadım.Yardımlarınızı bekliyorum.
ana_tablo isimli tabloya id adinda otomatik sayi sutunu olusturun ve asagidaki proseduru bi module kaydedip, calistirin.
Visual Basic
Sub Silgi()
Dim Kyt AsRecordset
Set Kyt =CurrentDb.OpenRecordset("SELECT ana_tablo.id AS dd FROM ana_tablo LEFT JOIN (SELECT max(yardım_tarihi)AS DSZ FROM ana_tablo GROUP BY adı, soyadı, baba_adı)AS Szg ON ana_tablo.yardım_tarihi = Szg.DSZ WHERE (((Szg.DSZ)IsNull))")
If Kyt.RecordCount = 0 ThenExitSub
Kyt.MoveFirst
DoUntil Kyt.EOF
CurrentDb.Execute "DELETE ana_tablo.* FROM ana_tablo WHERE ((ana_tablo.id)=" & Kyt!dd & ")"