Arkadaşlar tekrar merhaba.
Sql'de Excel'deki hücre içeriğine göre veri çeken makroyla sizlerin de yardımlarınızla bir süredir haşır neşirim.
Bir UserForm hazırladım ve ComboBoxlar içeriyor. comboboxtan değerleri seçip "Sorgula" command Buttonuna tıkladığımda Sql'den comboboxtaki kriterlere uyan verileri çekmesini istiyorum.
Userformumda 4 adet combobox mevcut. Bunlar; Yıl, Ay, Yakıt Türü ve Bölge Kodu seçmeye yarıyor ve içerikleri tanımlı. Ve bir de sorguyu başlatmak için koyduğum Command Button mevcut Userform üzerinde.
Userform1 üzerinde;
ComboBox1 - Yıl, ComboBox2- Ay, ComboBox3-Yakıt türü (sayı değil söz dizisi içeriyor). ComboBox4-Bölge Kodu ve bir de Sorgulamayı başlatmak üzere; CommandButton mevcut.
Hücre değerine göre sorgu yapan eski kod aşağıdadır. Şimdi bunu Comboboxtaki değerlere göre sorgu yapması için değiştirmek üzere yardımlarınızı bekliyorum.
Saygılar sunarım.
Sql'de Excel'deki hücre içeriğine göre veri çeken makroyla sizlerin de yardımlarınızla bir süredir haşır neşirim.
Bir UserForm hazırladım ve ComboBoxlar içeriyor. comboboxtan değerleri seçip "Sorgula" command Buttonuna tıkladığımda Sql'den comboboxtaki kriterlere uyan verileri çekmesini istiyorum.
Userformumda 4 adet combobox mevcut. Bunlar; Yıl, Ay, Yakıt Türü ve Bölge Kodu seçmeye yarıyor ve içerikleri tanımlı. Ve bir de sorguyu başlatmak için koyduğum Command Button mevcut Userform üzerinde.
Userform1 üzerinde;
ComboBox1 - Yıl, ComboBox2- Ay, ComboBox3-Yakıt türü (sayı değil söz dizisi içeriyor). ComboBox4-Bölge Kodu ve bir de Sorgulamayı başlatmak üzere; CommandButton mevcut.
Hücre değerine göre sorgu yapan eski kod aşağıdadır. Şimdi bunu Comboboxtaki değerlere göre sorgu yapması için değiştirmek üzere yardımlarınızı bekliyorum.
Saygılar sunarım.
Kod:
Sub SORGU()
'
' SORGU Makro
' Makro MURAT tarafından 08.01.2011 tarihinde kaydedildi.
'
'
Dim alan As Range
Set alan = ActiveWorkbook.Sheets("Sayfa3").Range("a1:z20000")
Sheets("Sayfa3").Select
alan.ClearContents
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=OTOSRV;Description=OTOSRV;UID=sa;;APP=Microsoft Office 2003;WSID=MURAT-PC;DATABASE=TRIGONDATAMERKEZ;Network=DBMSSOCN" _
, Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Cari.Miktari, Cari.YakitStr, Cari.Satis, Cari.ay, Cari.yil, Cari.BolgeId" & Chr(13) & "" & Chr(10) & "FROM TRIGONDATAMERKEZ.dbo.Cari Cari" & Chr(13) & "" & Chr(10) & "WHERE (Cari.ay=" & Sheets("Sayfa1").Range("M2").Value & ") AND (Cari.yil=" & Sheets("Sayfa1").Range("L2").Value & ") AND (Cari.YakitStr=" & "'" & Sheets("Sayfa1").Range("O2").Value & "'" & ") AND (Cari.BolgeId=" & Sheets("Sayfa1").Range("n2").Value & " )" _
)
.Name = "OTOSRV kaynağından sorgula"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
MsgBox "Tamamdır", vbInformation, "M U R A T H."
End With
End Sub
