• DİKKAT

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

Sql kodundaki tarih kısıtını excel hücresinden alma

Katılım
14 Haziran 2011
Mesajlar
88
Excel Vers. ve Dili
Excel 2007, Türkçe
Merhaba,
Elimizde "SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < "05.01.2011" AND TBLMCEK.SC_SONDUR="B" AND TBLBNKHESSABIT.ACIKLAMA="INGBANK TEMİNAT ÇEKLERİ" GROUP BY TBLBNKHESSABIT.ACIKLAMA " şeklinde bir sql sorgusu var. Bu sorgudaki "05.01.2011" tarihini, her defasında girip kodun içinden düzeltmek yerine; kodun bu tarihi, tarihin girileceği bir excel hücresinden veya bir inputboxtan almasını nasıl sağlayabiliriz?
 
Merhaba,
Elimizde "SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < "05.01.2011" AND TBLMCEK.SC_SONDUR="B" AND TBLBNKHESSABIT.ACIKLAMA="INGBANK TEMİNAT ÇEKLERİ" GROUP BY TBLBNKHESSABIT.ACIKLAMA " şeklinde bir sql sorgusu var. Bu sorgudaki "05.01.2011" tarihini, her defasında girip kodun içinden düzeltmek yerine; kodun bu tarihi, tarihin girileceği bir excel hücresinden veya bir inputboxtan almasını nasıl sağlayabiliriz?

Pek anlamam ama;

Kod:
"05.01.2011"
yukarıdaki kodun yerine aşağıdaki kodla değiştirin

Kod:
& Cells(1, "A").Value &

not : tarihi A1 hücresinden alır.
 
Ek bilgi olarak şunu da söylemek istiyorum. Bu kod, bir erp yazılımının veritabanından veri almaktadır. Rapor da bu yazılıma entegre edilmiş bir excel sayfasında yer almakta ve burdan yani excelden çalışmaktadır. Yani excelin sunduğu nimetlerle bu sorunun halledilebileceğini zannediyorum. Araştırma yapıyorum fakat programlama bilgim sadece bu sql kodlarını yazabilecek seviyede olduğu için sonuca ulaşamıyorum.
 
Birde böyle deneyin

Kod:
& CDate(Cells(1, "A").Value) &

başkada aklımdan bir şey gelmiyor.
 
Kod:
& CDate(Cells(1, "A").Value) &

Malesef bu da olmadı. Birkaç değişik şekilde de deniyorum. Tırnak içinde falan yazıp. sql kod hata veriyor hep.
 
Merhaba,

Birde aşağıdaki şekilde denermisiniz.

Kod:
[B]"SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < [COLOR=red]" & Cdbl(CDate(Cells(1, "A").Value) & "[/COLOR] AND TBLMCEK.SC_SONDUR="B" AND TBLBNKHESSABIT.ACIKLAMA="INGBANK TEMİNAT ÇEKLERİ" GROUP BY TBLBNKHESSABIT.ACIKLAMA "
[/B]
 
Sayın Korhan Ayhan ve halit3, en son yazdıklarınızı da denedim. Olmadı malesef:(
 
Kod:
[B]"05.01.2011"[/B]

iki tırnak arasındaki tarih değerine bir isim yazıp denermisiniz. mesela

Kod:
[B]"deneme"[/B]
 
iki tırnak arasındaki tarih değerine bir isim yazıp denermisiniz. mesela

o zaman da hata veriyor. ama kod çalışıyor ondan müsterih olun.
 
Merhaba,

Olmaması doğal.

Sql i hiç kullanmadım o yüzden sormam gerek.

Eğer vt oracle olsaydı oracle da değişkenler çift tırnak değil tek tırnak arasında verilir.

sql de değişkenler çift tırnak arasında mı veriliyor?

Eğer durum bu ise tarihi hem bir hücreden alacak hemde tarihi sql cümlesi içinde "01.08.2010" şeklinde düzenlenmesi gerekecektir diye düşünüyorum.

Fikir olması açısından kodlarınızın tamamını görmek daha mantıklı olurdu.
 
Dosyada deneme yapıp sonuçlarını görmek için programa bağlanmak gerekeceği için dosyayı eklememiştim. Yoksa dosyayı görmeden çözüm üretmenizi istemek gibi bir zahmete katlanmanızı istemezdim tabiki.
Kodun tamamını ilk mesajımda vermiştim. Sql, sayı haricinde her şeyi iki tırnak arasına almamızı istiyor. Yoksa dikkate almıyor verileni.
 
Merhaba,

Dener misiniz? bende merak ettim. A1 hücresinde tarih olduğu varsayılmıştır.

Kod:
Dim Tarih As String
Dim sql As String
Tarih = """" & Format([A1], "dd.mm.yyyy") & """"
sql = "SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < " & _
Tarih & " AND TBLMCEK.SC_SONDUR=""B"" AND TBLBNKHESSABIT.ACIKLAMA=""INGBANK TEMİNAT ÇEKLERİ"" GROUP BY TBLBNKHESSABIT.ACIKLAMA "
 
son hakkımı kullanmak istiyorum.
birde bunu deneyin

Kod:
"""" & Cells(1, "A").Value & """"
 
Merhaba,

Dener misiniz? bende merak ettim. A1 hücresinde tarih olduğu varsayılmıştır.

Kod:
Dim Tarih As String
Dim sql As String
Tarih = """" & Format([A1], "dd.mm.yyyy") & """"
sql = "SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < " & _
Tarih & " AND TBLMCEK.SC_SONDUR=""B"" AND TBLBNKHESSABIT.ACIKLAMA=""INGBANK TEMİNAT ÇEKLERİ"" GROUP BY TBLBNKHESSABIT.ACIKLAMA "

Yalnız şöyle bir şey var. Bu excel dosyasından erp programına giriş yapıyorum. Çalışan kod, sadece verdiğim sql kodu. ve o da bir hücrede yer alıyor.
Dim Tarih As String
Dim sql As String
Tarih = """" & Format([A1], "dd.mm.yyyy") & """"
Yukarıda verdiğiniz bu kodu nereye yapıştıracağım? Visual Basic düzenleyicisinde yazdığım zaman compile error verdi.
 
kodları boşuna istemedik herhalde :)

ne olduğunu tam olarak görmek için, illa biryerlere bağlanmak için değildi.
 
Tekrar Merhaba,

"SELECT SUM(TBLMCEK.TUTAR) FROM TBLMCEK INNER JOIN TBLBNKHESSABIT ON TBLBNKHESSABIT.NETHESKODU=TBLMCEK.SC_VERILENK WHERE TBLMCEK.VADETRH < " & _
"""" & Format([A1], "dd.mm.yyyy") & """" & " AND TBLMCEK.SC_SONDUR=""B"" AND TBLBNKHESSABIT.ACIKLAMA=""INGBANK TEMİNAT ÇEKLERİ"" GROUP BY TBLBNKHESSABIT.ACIKLAMA "
 
Kod:
[COLOR=red]"[/COLOR]05.01.2011[COLOR=red]"[/COLOR]

Anlamak amacıyla soruyorum yukarıdaki bölüme ait tarihin sağında ve solunda olan kırmızı işaretli tırnakları sildiğinizden eminmisiniz.

eğer silmediyseniz. yukarıdaki bölümü yani tırnak işaretleriyle beraber silip aşağıdaki bölümü ekleyip denermiziniz.

Kod:
"""" & Cells(1, "A").Value & """"
 
Geri
Üst