• DİKKAT

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

Sorgulamada Hepsi Kriteri

Katılım
20 Ocak 2006
Mesajlar
31
Excel Vers. ve Dili
Microsoft Office 2003 - İngilizce
Herkese merhabalar,

Elimde olmayan sebeplerden dolayı geçirdiğim uzun bir aranın ardından geri dönmenin mutluluğuyla kafamı karıştıran bir sorunun cevabı ile soluğu forumda aldım. Lafı uzun tutmayarak soruma geçmek istiyorum. Elimde şirketimize ait ürün kodları, ürüm isimleri ve satış miktarları olan “veritabani” isimli bir dosyamız var. Dosya içerisinde 001 – 999 arası değişen ürün kodları var. Siteden öğrendiğim kadarıyla istediğim ürün kodunun satış rakamını textbox içerisine getirebiliyorum. Bunu yaparken bir combobox içerisinde 001 – 999 arası kodlardan birisini seçerek o koda ait olan ürünün satış rakamı ilgili textbox’ a geliyor. Sorunum ben bu listenin başına “Tüm Ürünler” isimli bir seçenk koysam ve bu seçenek vasıtasıyla seçim yaptırarak 000 – 999 arası tüm kodların toplam satış rakamını alabilir miyim?

Yardımlarınız için şimdiden teşekkürler.

Kodlarım aşağıdaki gibidir :

Private Sub Commandbutton1-Click()

Set RS = CreateObject("ADODB.recordset")
strSQL = "SELECT * FROM [veritabani] Where UrunKodu='" & ComboBox1 & "'"
RS.Open strSQL, adoCN, 1, 3

Textbox1.value = RS(“SatisRakami”)

RS.Close

End Sub
 
Selamlar,

Ben olsam bu şekilde yapardım...

Kod:
Private Sub Commandbutton1_Click()
Set RS = CreateObject("ADODB.recordset")
strSQL = "SELECT * FROM [veritabani] " & p_Kriter(ComboBox1)
RS.Open strSQL, adoCN, 1, 3
Textbox1.Value = RS("SatisRakami")
RS.Close
End Sub
 
 
Private Function p_Kriter(kr As String) As String
    If kr = "<Hepsini Listele>" Then
        p_Kriter = ""
    Else
        p_Kriter = " where UrunKodu='" & kr & "'"
    End If
End Function
 
Son düzenleme:
Zeki hocam teşekkür ederim,bende.:)
 
Aşağıdaki gibi deneyebilirmisiniz?
Kod:
Private Sub Commandbutton1-Click()
Set RS = CreateObject("ADODB.recordset")
If Combobox1 = "Tüm Ürünler" Then
strSQL = "SELECT [COLOR=black][FONT=Times New Roman]SUM([[FONT=Verdana][SIZE=2]SatisRakami[/SIZE][/FONT]])  [/FONT][/COLOR]FROM [veritabani]"
Else
strSQL = "SELECT * FROM [veritabani] Where UrunKodu='" & ComboBox1 & "'"
End If
Textbox1.value = RS(“SatisRakami”)
RS.Open strSQL, adoCN, 1, 3
RS.Close
End Sub

Sanki bir yerde hata yapıyorum. :dusun:
 
Son düzenleme:
Zeki Hocam,

İlginiz ve cevabınız için çok teşekkür ederim. Kodlar işimi gördü. Sadece aşağıdaki değişikliği yaptım.

UrunKodu=CInt('" & ComboBox1 & "')"

Çok çok teşekkürler, ellerinize sağlık. Sayenizde ileri düzey kullanıcı olduk :)

Recep Bey toplamasını yapmak için ise aşağıdaki şekliyle kodu değiştirmek gerekiyor;

Set RS = CreateObject("ADODB.recordset")
strSQL = "SELECT SUM(Satis) as SatisRakami FROM [satis] " & p_Kriter(ComboBox1)
RS.Open strSQL, adoCN, 1, 3

TextBox1 = RS("SatisRakami")

RS.Close

İlginiz için size de teşekkürler...
 
Recep Bey toplamasını yapmak için ise aşağıdaki şekliyle kodu değiştirmek gerekiyor;

Set RS = CreateObject("ADODB.recordset")
strSQL = "SELECT SUM(Satis) as SatisRakami FROM [satis] " & p_Kriter(ComboBox1)
RS.Open strSQL, adoCN, 1, 3

TextBox1 = RS("SatisRakami")

RS.Close

İlginiz için size de teşekkürler...

Evet sorunuzu yanlış anlamışım.
 
Geri
Üst