• DİKKAT

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

Listbox doğum tarihi yaklaşanları listeleme

Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Merhaba alttaki kod f8 alanında doğum tarihleri var butona tıklayınca bu ay içerisinde doğum günü olanları listelemesini istiyorum size zahmet bu hafta içerisinde olan koduda paylaşırsanız sevinirim.
Kod:
Private Sub CommandButton2_Click()
sql = "select f1,f2,f3,f4,format([f5],""dd.mm.yyyy""),format([f6],""dd.mm.yyyy""),f7,format([f8],""dd.mm.yyyy"") from " & syfaADo & " where not isnull(f1)"

   With Me
      
                On Error Resume Next
                sql = sql & " order by [f4]"
        Set Rs = Con.Execute(sql)
        .ListBox1.ColumnCount = Rs.Fields.Count
        .ListBox1.Clear
 
        If Not Rs.EOF = True Then .ListBox1.Column = Rs.GetRows
         UserForm3.ListBox1.ColumnWidths = "30;80;90;150;70;70;65;60"
    End With
 
End Sub
 
Son düzenleme:
Arama sonucunda aşağıdaki konuyu buldum.İnceleyiniz.

 
Merhaba.

Bir zamanlar doğrudan sorgu ile almak istedim bir türlü yapamamıştım. Bugün sizin sorunuzu görünce tekrar üzerinde düşündüm, deneme
yanılma sonucunda sonuca ulaştım.
Bende gayet güzel çalıştı.

Şartı (Secim) ben kod içine koydum, olay anlaşılsın diye, siz dışardan bu değeri atayabilirsiniz.

Aşağıda verdiğim kodları siz kendinize göre uyarlayınız.

Kod:
    Dim BsTarih As String
    Dim BtTarih As String
    Dim Secim As Integer
                        'Secim = 1 ise gün,
                        'Secim = 2 ise bu hafta
                        'Secim = 3 ise bu ay
  
    Secim = 3
  
    If Secim = 1 Then
        BsTarih = Format(Date, "mmdd")
        BtTarih = BsTarih
    ElseIf Secim = 2 Then
        BsTarih = Format(Date - Weekday(Date, vbMonday) + 1, "mmdd")
        BtTarih = Format(Date + (7 - Weekday(Date, vbMonday)), "mmdd")
    Else
        BsTarih = Format(DateSerial(Year(Date), Month(Date), 1), "mmdd")
        BtTarih = Format(DateSerial(Year(Date), Month(Date) + 1, 0), "mmdd")
    End If

Sorgu :
Kod:
    SORGU = "select ADI, SOYADI, DTARİH, format(cdbl(DTARİH),""mmdd"") AS AYGUN  from [DoğumTarihleri$] " & _
            "where [DTARİH] <> NULL AND format(cdbl(DTARİH),""mmdd"") BETWEEN " & BsTarih & " and  " & BtTarih

Sorgudaki :
Kod:
format(cdbl(DTARİH),""mmdd"") AS AYGUN
benim kontrol amaçlı eklediğim ekti, siz bunu çıkartınız.

Kodları kendinize göre uyarlayınız.
 
Son düzenleme:
@nejdet hocam cok iyi çalışıyor fakat sütun hepsi tarih formatında bazen dogum tarihi girilmeyebiliyor . Boş olunca hata veriyor onu nasıl çözebiliriz
 
@nejdet hocam cok iyi çalışıyor fakat sütun hepsi tarih formatında bazen dogum tarihi girilmeyebiliyor . Boş olunca hata veriyor onu nasıl çözebiliriz

Merhaba, bir kaç tarih sildim ve aşağıdaki gibi kod çalıştı. 4 nolu mesajda da aynı düzeltmeyi yaptım.

Kod:
    SORGU = "select ADI, SOYADI, DTARİH, format(cdbl(DTARİH),""mmdd"") AS AYGUN  from [DoğumTarihleri$] " & _
            "where [DTARİH] <> NULL AND format(cdbl(DTARİH),""mmdd"") BETWEEN " & BsTarih & " and  " & BtTarih
 
Sn. @Necdet hocam, çalışan örnek dosyayı ekleyebilirseniz sevinirim, buna benzer dosyaya ihtiyacım var.
 
Sayın tahsinanarat bendeki dosya özel, sizin için isimleri değiştirip buraya yükleyim.
Biraz zaman alacaktır.
 

Ekli dosyalar

Geri
Üst