Excel içinden SQL tablosundaki veriyi okumak

Katılım
1 Mart 2007
Mesajlar
3
Excel Vers. ve Dili
Excel 2003 TR
Forumdaki arkadaşların sayesinde aşağıdaki gibi SQL Veri tabanına bağlanmayı başardım. Fakat sadece bağlanabildim
Sub AAAAA()
Set con = New ADODB.Connection
strconn = "PROVIDER=SQLOLEDB;DATA SOURCE=" & baglantiIP & ";DATABASE=" & datebase & ";Auto Translate=False;user id=" & UserName & ";password=" & userpass & ";trusted_connection=False"
con.ConnectionString = strconn

On Error Resume Next
con.Open

If con.State <> 0 Then
MsgBox ("Baglant&#305; Ba&#351;ar&#305;l&#305;.")
Else
MsgBox ("Ba&#287;lant&#305;da Sorun Var.")
End If

End Sub


Tamam da ben ba&#287;lant&#305;y&#305; ya veri okumak, ya g&#252;ncellemek, ya eklemek, ya da silmek amac&#305; ile yapmam gerekiyor. Ben sadece ba&#287;lant&#305; kurabildim o kadar.

Ben SQL database ine ba&#287;lant&#305; kurduktan sonra, SQL deki bir tablodan Select komutu ile veriyi se&#231;ip okumak ve tablodaki verileri Excell h&#252;crelerine yazmak istiyorum.

Forumda &#231;ok ara&#351;t&#305;rd&#305;m ama &#246;rne&#287;ini bulamad&#305;m. L&#252;tfen bilen arkada&#351;lar bana yard&#305;m edin. &#199;ok &#246;nemli bu benim i&#351; yerimde acil bunu yapmam gerek. &#350;imdiden te&#351;ekk&#252;r ederim,Sayg&#305;lar&#305;mla....

Ayr&#305;ca mail adresim ahmetfidan@gmail.com dur. msn de de bunu kullan&#305;yorum.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
'Aşağıdaki örnek yapıyı; bir sorgu sonrası elde ettiğin verileri Excel sheetine almak için kullanabilirsin. Takıldığın yerlerde yine yardımcı oluruz.

Kod:
Sub AAAAA()
Set con = New ADODB.Connection
Set rs = New ADODB.Recordset
tablo = stoklar 'siz veriyi almak istediğiniz tablo ismini yazın
strconn = "PROVIDER=SQLOLEDB;DATA SOURCE=" & baglantiIP & ";DATABASE=" & datebase & ";Auto Translate=False;user id=" & UserName & ";password=" & userpass & ";trusted_connection=False"

con.ConnectionString = strconn
On Error Resume Next
con.Open

If con.State <> 0 Then
MsgBox ("Baglantı Başarılı.")
Else
MsgBox ("Bağlantıda Sorun Var.")
End If

sorgu="SELECT id, kodu, adi, birim FROM " & tablo
rs.Open sorgu, con, adOpenForwardOnly, adLockReadOnly
 
rs.MoveFirst
Do Until rs.EOF
    y = y + 1
   for i=1 to 4 'tabloda çekmek istediğin alan sayısına kadar
       cells(y,i)=rs(i-1)
   next i
   rs.MoveNext
Loop

End Sub
 
Katılım
29 Haziran 2005
Mesajlar
573
Excel Vers. ve Dili
Excel 2003 Türkçe
Selamlar Syn fbc SQL ile ilgili &#246;rnek bir &#231;al&#305;&#351;man&#305;z var ise &#351;ayet ekleyebilir misiniz? &#304;lginize te&#351;ekk&#252;rler
 
Üst