Excel vba ile sql den veri çekmek

Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
Merhabalar. Bu konuyla ilgili siteden arama yaptım, fakat aynı konuyla ilgili birşey bulamadım. Ekli tablomda ado ya da başka bir yordamı varsa listelemek istedğim bazı şeyler var. Örnek tablomda veri sayfasındaki barkodların sql tabanımdan okuyup barkodlara ait fiyatlarını listelemek istiyorum. Bunu bir türlü yapadım. sql veri tabanımda tanımlı olan barkodumun table adı stokbarkodu, fiyat table ı ise stokfiyati. server adı "2009" makina adı "ana" kullanıcı adı "kasa1". Ekli dosyamı incelerseniz daha iyi anlarsınız. Yardımlarınız için şimdiden hepinize teşekkür ederim. Saygılarımla...
 

Ekli dosyalar

usta07

Destek Ekibi
Destek Ekibi
Katılım
30 Mart 2008
Mesajlar
405
Excel Vers. ve Dili
2003 Türkçe
İstediğiniz şey aslında excelde var.
Veri
Dış veri al
Diğer kaynaklardan
sql serverden
Veri tabanı sunucusuna bağlan
"sunucu adı yazılacak"
istediğniz verileri içeren veri tabanı seçilecek
table adı seçilecek
gelen pencereden tablo, özet tablo, grafik ve özet tablo seçeneklerinden birsi seçlecek
son tıklanacak verler excele gelir.
umarım anlatabldim buna benzer bir çok yöntemi var queri yazmayı biliyorsanız daha kolay halledebilrsiniz
kolay gelsin
 
Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
verilerin gelmesini istiyorum fakat sadece istediğim verileri. Bu şekilde tüm barkodların fiyatlarını gösteri. Yani düşeyara gibi bişey olucak. Teşekkürler
 
Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
tüm ümitlerim tükeniyor üstadlarımdan çözüm bekliyorum :(
 
Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
yanlış yerdemi sordum sorumu. yada böyle konu açıldı mı
 
Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
üstadlar bari sorunun cevabı yok diyin bişey yazın :(
 
Katılım
7 Aralık 2006
Mesajlar
83
Excel Vers. ve Dili
Excel 2002 ingilizce
data -> import external data -> new database query burada önceden windowsun odbc ayarlarında tanımladığın veritabanının adını seçiceksin veri tabanına excel bağlanıcak ve query wizard gelcek, bu şekilde çalışabilirsin eğer iptal edersen daha ayrıntılı query yapabileceğin başka bir form gelir. oşekilde istediğin kriterlere uygun seçim yaparsın.. tüm bu işlemleri makro olarak kaydedersen istediğin sorgunun excel vba kodunuda bulabilirsin..
araştır iyice ben bu şekilde yapıyorum :)
 
Katılım
29 Aralık 2005
Mesajlar
862
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2025
Aşağıda gördüğünüz benim şu anda sql databaseden veri çekmek için kullandığım makro. kendinize göre uyarlarsanız çalışır.

........
Dim kriterx1 As String
Dim kriterx2 As String
Dim kriterx3 As String
kriterx1 = Range("l1").Value
kriterx2 = Range("l2").Value
kriterx3 = Range("m2").Value
With ActiveSheet.QueryTables.Add(Connection:="ODBC;DSN=kullandığınız database bağlantısının adı (ODBC'de tanımlanan ad);UID=sa;APP=Microsoft Office XP;DATABASE=kullandığınız database ;Trusted_Connection=Yes" _
, Destination:=Range("A1"))
.CommandText = "SELECT kullanılan view.[kullanılan field], kullanılan view.[kullanılan field], kullanılan view.[kullanılan field], kullanılan view.[kullanılan field], Ayar, Ayar_neden, Ekis, Ekis_neden, Hurda, Hurda_neden FROM kullanılan database.dbo.kullanılan view WHERE [kullanılan view]>='" + kriterx1 + "' And [kullanılan view]<= '" + kriterx2 + "' And [kullanılan view]= '" + kriterx3 + "' ORDER BY [kullanılan view]"
.Name = "kullandığınız database bağlantısının adı kaynağından sorgula"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=True
End With
.....
 
Katılım
5 Eylül 2006
Mesajlar
67
Excel Vers. ve Dili
2003 türkçe
kriterx1 = Range("l1").Value bu kısımda invalid outside procedure hatası verdi.

server: ANA
DATABASE: 2009SERVER
KULLANICI: KASA1

TABLE KISMINDAN STOKBARKOD BUNUN İÇİNDE İKİ ADET NAME VAR BİRİNCİSİ BARKOD İKİNCİSİ FİYAT. AMAÇ ELLE GİRDİĞİM VERİ SAYFASINDAKİ BARKODLARI DATABASEDEKİYLE EŞLEŞTİRİP FİYATINI GÖSTERMESİ.
 
Üst