• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Access Veritabanındaki Max Değere Ait Diğer Sütundaki Veriyi Bulmak

Katılım
22 Aralık 2005
Mesajlar
423
Excel Vers. ve Dili
Microsoft 365
Arkadaşlar merhaba,

Geçmişte Sn. Orion1'in de desteği ile Access veritabanında çeşitli işlemler yaparak istediğim sonuçlara ulaşabilmiştim. İnsan biraz meraklı olunca tabi öğrenmenin sonu yok, şöyle olsa böyle olsa diyor ve projenize detaylar ekleme başlıyorsunuz. Elbette hemen olmuyor ama çıldırma noktasına geldiğinizde yardım almanın elzem hale geldiğini anlıyorsunuz. Şu o noktadayım işte ve desteğinize ihtiyacım var. Elimdeki Access tablosundaki ISG_NO sütunundaki max değeri alabiliyorum ancak bunun yılları yazan sütununu bir türlü aldıramadım. Şu kodu düzenlemeye çalışıyorum ama malum sonuç, başarısızlık. Destek olabilirseniz ne mutlu bana, şimdiden teşekkürlerimi sunuyorum.

rst.Open "select MAX(ISG_NO) from [ACIKAKSIYON] WHERE ISG_YIL ='" & Year(Date) & "'", AdoCN, 1, 3
 
Örnek dosyalar olmadan yardımcı olunması biraz zor olur...

.
 
Haklısınız Haluk Bey, bildiriminiz için teşekkür ederim. ACIKAKSIYON isimli dosya 4MB boyutunda ve excel VBA tarafında bu yukarıda ilettiğim kod satırı ile bir değişkene atama yaptırmaya çalışıyorum. Her ne kadar kayıtları silerek paylaşsamda boyut yine iki ayrı dosya için biraz büyük olacak. Bu nedenle dosya eklemeyerek sadece kod satırını yazdım. Umuyorum ki ADO ile max değeri yıl değişkeni bazında bulabileceğim bir kod satırına ulaşabileceğim yada mevcut kodu revize edebileceğim. Kod satırı Veri Tipi uyumsuzluğu uyarısı veriyor ancak hem veritabanında hemde kod satırında iki alanı da Sayı olarak tanımlamıştım.
 
Haluk hocam şu an yok.Ben yazayım,bir deneyin.:cool:
Kod:
rst.Open "select MAX(ISG_NO) from [ACIKAKSIYON] WHERE ISG_YIL =" & Year(Date), AdoCN, 1, 3
 
Son düzenleme:
Sn. Orion1 yine hızır gibi yetiştiniz ilginize teşekkür ediyorum. Denedim söz dizimi hatası verdi. Görseli iletiyorum
 

Ekli dosyalar

  • Capture.JPG
    Capture.JPG
    27.5 KB · Görüntüleme: 2
Her zamanki gibi muhteşemsiniz. Çok teşekkür ederim. Bu bulunan değerin diğer sutunlarına ulaşabilmek mümkün mü acaba yani rst("KONU") başlıklı sütundaki veriyi bu sorgu ile alabilir miyim?
 
Her zamanki gibi muhteşemsiniz. Çok teşekkür ederim. Bu bulunan değerin diğer sutunlarına ulaşabilmek mümkün mü acaba yani rst("KONU") başlıklı sütundaki veriyi bu sorgu ile alabilir miyim?
Aşağıdaki gibi deneyin.
Olursa olur,olmazsa onu bilemiyecem.:cool:
rst.Open "select MAX(ISG_NO),KONU from [ACIKAKSIYON] WHERE ISG_YIL =" & Year(Date), AdoCN, 1, 3
 
Canınız sağolsun, hata verdi ama olsaydı süper olacaktı. Tüm destekleriniz için teşekkür ederim, emeğinize, yüreğinize sağlık.
 
Canınız sağolsun, hata verdi ama olsaydı süper olacaktı. Tüm destekleriniz için teşekkür ederim, emeğinize, yüreğinize sağlık.
Şimdi bende merak ettim.
Acaba nasıl olur.
Konuyu takibe alayım bari.
Aslında ayni dosya olmasada haluk hocamın dediği gibi örnek bir access vt ve excell eklerseniz cevap veren üstadlar olacaktır.
 
Örnek dosya olmadan konulara cevap hazırlamak bazen zor olduğu için bir örnek dosya istemiştim ama maalesef alamadım...

Bunun üzerine, bende MS Access olmadığı için anladığım kadarıyla Excel'de ufak bir örnek hazırladım, inceleyip kendinize uyarlayabilirsiniz...


.
 

Ekli dosyalar

Son düzenleme:
Hocam teşekkür ederim.
Yalnız ISG_NO alanında 2019 a ait en büyük değer A9 hücresindeki 88 değeri olması gerekirken 14 ü getiriyor.
 
Çok saygıdeğer üstat arkadaşlarım hepinizin emeğine ilgisine teşekkür ediyorum. Dediğiniz gibi yapıp bende benim gibi bu konuda takılan arkadaşlarada rehber olabilmesi adına dosyayı hazırladım. Dosya ektedir. Sn. Haluk Bey paylaşımınız için tekrar teşekkür ediyorum. Veritabanı üzerinde uyguladığımda 2019 yılı ilk değerini getirdi. LAST olarak MAX fonksiyonunu değiştirdim ama değişmedi.
 

Ekli dosyalar

  • AXI.rar
    AXI.rar
    102.6 KB · Görüntüleme: 2
Hocam aşağıdaki gibi yapınca oldu.
Kod:
    strSQL = "Select MAX([ISG_NO]), [ISG_YIL], [KONU] from [ACIKAKSIYON$] " & _
             "where [ISG_YIL] =" & Year(Date) & " group by [ISG_NO],[ISG_YIL], [KONU] order by [ISG_NO] desc"
 
Ben de benzer bir şey yapıp, 11 No'lu mesaja dosyayı eklemiştim....... sizin SQL'de "max" fonksiyonunu kullanmanıza gerek yok.

.
 
Hocam şöyle yaptım sorguyu ,dediğiniz gibi max yapmaya gerek yok.
Kod:
    strSQL = "Select [ISG_NO], [ISG_YIL], [KONU] from [ACIKAKSIYON$] " & _
             "where [ISG_YIL] =" & Year(Date) & " group by [ISG_NO],[ISG_YIL], [KONU] order by [ISG_NO] desc"
 
Hocam siz zaten yapmışsınız 11 nolu mesajda.
Teşekkür ederim.
 
Evren Bey, "Group By" ifadesine de gerek yok..... 11 No'lu mesajdaki dosyayı inceleyebilirsiniz.

.
 
Evet inceledim hocam.
Group by yok.
 
Kestirme yoldan, şöyle de olabilir...

Kod:
    strSQL = "Select * from [ACIKAKSIYON$] where [ISG_YIL] =" & Year(Date) & " order by [ISG_NO] desc"

.
 
Geri
Üst