• DİKKAT

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

SQL den veri çağırmayı (ANİMASYON YAYIN) anlattım ve SORDUM.

  • Konbuyu başlatan Konbuyu başlatan Rafet
  • Başlangıç tarihi Başlangıç tarihi
Katılım
24 Mart 2005
Mesajlar
230
Excel Vers. ve Dili
Ofice 2010 - Türkçe
Uzun zamandır öğrenmek istediğimiz SQL den veri alma olayını çözdük. Böylece kullandığımız programların ek programlarına (LKS'nin Navigatoru, Netsisin Excent'i vb.. ) bağlılığımız kalmayacak. Yani yuzlerce dolar vermemize gerek yok. Ve hatta hayal güünümüze göre bu programlardan ala bileceğimiz verilerden daha fazlasını ala bileceğiz. Tabii bunların hepsi SQL tablolarını çözmekle mümkün. Buda ayrı bir konu .

Evet Artık SQL'den EXCELL'e veri cağırabiliyoruz.

Bunu nasıl yaptığımı alttaki linkte bir animasyonla anlatmaya çalıştım. (İndirdiğiniz rarda html dosyasını tıklayarak animasyonu ileyiniz.)

Dosyası

Buradan Animasyonu izleyebilirsiniz.

Fakat olayı daha güzelleştrtirmek için yapmak istediğim başka bir şey daha var ki onuda ikinci linkte anlattım.

http://rapidshare.de/files/19335407/Soru.rar.html

Aslında soru EXCELL sorusu ama yinede buradan sormam daha anlamlı olacak.


Bilgi Edit:Site Admin'i ALPEN tarafından dosyanız daha rahat izlenmesi için foruma adapte edilmiştir.
 
Sayın Rafet,Sorunuzun cevabını bilmiyorum ama SQL'den EXCELL'e veri çağırmaya ait animasyon çok harika olmuş.
Teşekkürler
 
Bi deneyin bakalım. :)

Kod:
Range("A7").Select
    With Selection.QueryTable
        .Connection = _
        "ODBC;DRIVER=SQL Server;SERVER=N;UID=sa;PWD=;APP=Microsoft Office 2003;WSID=N"
        .CommandText = Array( _
        "SELECT Sum(TBLFATUIRS.GENELTOPLAM), TBLFATUIRS.KOD1" & Chr(13) & "" & Chr(10) & "FROM deneme2.dbo.TBLFATUIRS TBLFATUIRS" & Chr(13) & "" & Chr(10) & "WHERE (TBLFATUIRS.TARIH Between {ts '" & [D1] & "'} And {ts '" & [D2] & "'})" & Chr(13) & "" & Chr(10) & "GROUP BY TBLFAT" _
        , "UIRS.KOD1")
        .Refresh BackgroundQuery:=False
    End With
 
L_M ilgilendiğin sağol ama olmadı.

Başka çözümlerede olabilir. Sizi direk bu çözüme zorlamiyım. :).

Mesala akılıma iki makroyu sırayla çalıştırarak. Çözmek geldi.

Olabilirmi.

Bakalım akşama doğru denicem.
 
Linkteki dosyandaki makronun yazımı yanlıştı, doğrusu yukardaki şekilde. ben geri tarafını bilmem. :) ama D1 ve D2 hücreleri kriter olarak yukardaki şekilde sql cümlesine yazılır. & işaretleri kullanılarak yani. hata veriyorsa bi de aşağıdaki şekilde dene.

Kod:
 Range("A7").Select
With Selection.QueryTable
.Connection = _
"ODBC;DRIVER=SQL Server;SERVER=N;UID=sa;PWD=;APP=Microsoft Office 2003;WSID=N"
.CommandText = Array( _
"SELECT Sum(TBLFATUIRS.GENELTOPLAM), TBLFATUIRS.KOD1" & Chr(13) & "" & Chr(10) & "FROM deneme2.dbo.TBLFATUIRS TBLFATUIRS" & Chr(13) & "" & Chr(10) & "WHERE (TBLFATUIRS.TARIH Between {ts DATEVALUE('" & [D1] & "')} And {ts DATEVALUE('" & [D2] & "')})" & Chr(13) & "" & Chr(10) & "GROUP BY TBLFAT" _
, "UIRS.KOD1")
.Refresh BackgroundQuery:=False
End With
 
Merhaba

Arama Motoruna SQL yazın ve arattırn. İki tarih arası bir çok soru ve cevap var.
 
(Affınıza sığınarak) Rafet bey,
sizin istediğiniz şu yukarıdaki örnekteki sorguda tarihlerin excelde gireceğiniz iki adres arasındaki değişikene göre sorgulanması değil mi?
 
bezl' Alıntı:
(Affınıza sığınarak) Rafet bey,
sizin istediğiniz şu yukarıdaki örnekteki sorguda tarihlerin excelde gireceğiniz iki adres arasındaki değişikene göre sorgulanması değil mi?

Est.

Evet İki değişken. Bu tarihte ola bilir daha sonra başka bişede. Yani Veri tabanından süzeceğim satırdakı harf veya rakam. Sadece tarih değil. İkinci animasyonda anlattığım gibi. Bunu makro derslerinde gördüğüm gibi [D1] gibi yazdım ama çalışmadı.

Yani nasıl anlatayımm.
SQL de BETWEEN komutuylada veya LIKE komutuylada kullancam veya IN. SQL komuttan sonra () içinde yazdığımız değişkeni bir EXCELL hüçresinden (Veya EXCELL deki bir adresten ne denir bilmiyorum :shock: ) almasını istiyorum.

Başka çözümleri varsa onlarda acığım ama basic bilmiyorum. Veya herhangi bi yazılım dili . :(. Basıt birşekilde. EXCELL de haletmek istiyorum.
 
Sayın Rafet ekteki dosyayı incelerseniz, ben deneme dosyanızdaki d1 ve d2 hücreleri değiştirdiğiniz anda sorgunun yenilenmesini sağlayan bir macro gönderdim ama buradaki sorguya bakıp tam sorgunuz olup olmadığını kontrol ederseniz tam sonuç almış oluruz. Bir sorun çıkarsa görüşürüz. Sonucu bildirirseniz sevinirim...
 
Ben şimdiden verileri ne olarak aldığımı yazıyım da baştan bazı sorunları halledelim
Sunucu : N
Veritabanı: deneme2
Sorgu : SELECT Sum(TBLFATUIRS.GENELTOPLAM), TBLFATUIRS.KOD1 FROM deneme2.dbo.TBLFATUIRS TBLFATUIRS WHERE TBLFATUIRS.TARIH between ('" + Format(Sheets(1).Range("d1"), "mm/dd/yyyy") + "') and ('" + Format(Sheets(1).Range("d2"), "mm/dd/yyyy") + "') GROUP BY TBLFAT, UIRS.KOD1
Verinin Hangi Hücreye getirildiği : A7
 
Arkadaşlar ilgilendiğiniz için çok teşekküler.

Fakat vaktim bıraz kısıtlı olduğu için hazırladığınız komutları inceleyemedim. Acıkcası ilk bakışta çalışmadı Yada çalıştıramadım.

En kısa zamanda bakmaya çalışacağım.

Tekrar tekrar teşekkürler.
 
ilk önce son attığım mesajdaki verilerin doğruluğuna baktıktan sonra kontrol ederseniz iyi olur. Çünkü şu an gönderdiğim kodlarla mesela netsisden online iki tarih arası mizan, muavin, cari hesap ekstresi, çek vs. ne istiyorsanız alıyorum. Yapmam gereken sadece ilgili hücredeki değişkeni değiştirmek oluyor.
 
Olmuyor Olmuyor.

Neden olduğunu bile çözemedim.

Belki Yazdığınız kodlara yabancı olduğumdan , yada başka bi değişle hiç kodları bilmediğimden. Çözemedim.

Yinede yeşekkürler.

Bu günlerde çok yaoğun bir tempoda çalışmam gerektiğinden vakit ayıramıyorum. Daha sonra herkezinde yaralanacağı bir çalışmayla dönerim umudundayım.

Muhabetle.
 
Arkadaşlar aşka bir arkadaşında yardımıyla Sorunun nerden kaylakdığını çözdüm. Ama yinede tam olmadı. İsterseniz bi anımosyona bir bakın
 
Benim gönderdiğim dosya gözatmamışsınız ama bu sorunun cevabı da vardı orda ve şimdi yine gönderiyorum dikkate almayabilirsiniz ama ben de bir daha göndermeyeceğim zaten kolay gelsin
 
Hayır Sn. bezl baktım . Tabiykki baktım ama olmamıştı.

Tekrar bakıyorum.

Blkide bende bir sorum vardı. Hwemen Bakıyorum.

Saaygılar.
 
neyse sizin şu an sorununuz sadece metin olarak biçimlendiriyorum diyorsanız benim tarih aralığında verdiğim format biçimlemesiyle hücreyi verirseniz d1'i değişken olarak kullanabilirsiniz ama dediğim
Ben sunucu ismini: N
veritabanı ismini: deneme2
ve sorgu sonucu gelen veriyi c10' getirttim bu veriler doğru ise d1'i değiştirdiğiniz anda verilerin gelmesi lazım kolay gelsin
 
Sn. bezl sizin çalışmanızı neden çalıştıramadığımı çözdüm şu an çok güzel bir şekilde çalışıyor.

formatı sisizn yazdığığınız biçimde "dd/mm/yyyy" değilde ""yyyy-mm-dd hh:mm:ss" yazdığım zaman çalışıyo.

Yanlız ben sadece bir tarih değil iki tarih arasında da döküm almak isteyeceğim. Aslında istediğim sizin yazdığınız yazılımın nasıl yazıldığını öğrenmek. :D. Neyse vakit bulursak bakacağız yine. :).

Butün arkadaşlara tekrar tekrar teşekkürler.

Yine bişeler çözdükce paylaşmaya devam. :).

Muhabbetle.
 
Re: SQL den veri çağırmayı (ANİMASYON YAYIN) anlattım ve SOR

Sayın rafet,

Sunumunuz detaylı ve anlaşılır. Teşekkür ederim.
Bu sunumu macromedia nın captivate programı ile mi yaptınız yoksa başka bir programı. Alternatifleri varsa bilmek isterim de :)
 
Geri
Üst