• DİKKAT

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

Sql bağlantısı sorgu problemi

Katılım
21 Mayıs 2007
Mesajlar
23
Excel Vers. ve Dili
excel 2003
Sitede emeği geçen herkese tekrar teşekkürler.

Aşağıda belirttiğim kodlarla bağlandığım excel sayfasında bulunan kodlar ile DATA2.xls sayfasında ad tanımlama yaparak oluşturduğum tabloya bağlanarak GUNLER isimli bu tablodan GEMI isimli sutundaki bilgileri çekmek istiyorum fakat 'GUNLER.GEMI*' sorgu ifadesiiçindeki sözdizimi hatası ( eksik işleç ) hatası alıyorum. [GUNLER.GEMI] olarakta denedim ama aynı sonucu verdi. Yardımcı olabilirseniz sevinirim Şimdiden teşekkürler. bulunduğum yerdeki sistem izin vermediğinden dosya ekleyemiyorum.


Sub deneme()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim rng As Range

Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
Set rng = ThisWorkbook.Sheets("sayfa1").Range("a1")
conn.Open "provider=microsoft.jet.oledb.4.0;data source = " & _
ThisWorkbook.Path & "\dosyam.xls" & ";extended properties=""excel 8.0;hdr=yes"""

rs.Open "SELECT GUNLER.GEMI * FROM GUNLER", conn, 1, 1
rng.CopyFromRecordset rs
Set rs = Nothing
Set con = Nothing
End Sub
 
Merhaba,
şu şekilde denermisiniz, iyi çalışmalar.

Kod:
Sub deneme()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim rng As Range

Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
Set rng = ThisWorkbook.Sheets("sayfa1").Range("a1")
conn.Open "provider=microsoft.jet.oledb.4.0;data source = " & _
ThisWorkbook.Path & "\dosyam.xls" & ";extended properties=""excel 8.0;hdr=yes"""
sqlstr = "SELECT gemi FROM [GUNLER$]"
rs.Open sqlstr, conn, 3, 1
rng.CopyFromRecordset rs
Set rs = Nothing
Set conn = Nothing
End Sub
 
Cevabınız için teşekkürler fakat aynı hatayı vermeye devam ediyor. Aşağıda belirttiğim şekilde yaptığımda bütün tabloyu alabiliyorum fakat benim istediğim bu tabloda sadece bir sutundaki verileri almak


Sub deneme()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim rng As Range

Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
Set rng = ThisWorkbook.Sheets("sayfa1").Range("a1")
conn.Open "provider=microsoft.jet.oledb.4.0;data source = " & _
ThisWorkbook.Path & "\dosyam.xls" & ";extended properties=""excel 8.0;hdr=yes"""
sqlstr = "SELECT * FROM GUNLER"
rs.Open sqlstr, conn, 3, 1
rng.CopyFromRecordset rs
Set rs = Nothing
Set conn = Nothing
End Sub
 
Merhaba,
yukarıda verdiğim kodları test ederek yazdım. Sadece gemi sutunundaki bilgileri getiriyor. Ekli dosyayı denermisiniz, iyi çalışmalar.
 

Ekli dosyalar

düzeltme

bu arada düzeltme olarak GUNLER isimli tablodan GUNLER isimli sutunu değil GEMI isimli sutunu olacak yazım hatası için kusura bakmayın lütfen (sorun aynı şekilde yalnız yanlış anlaşılma olmasın)
 
sunucudaki yoğunlukten dolayı cevabım gecikti kusura bakmayın.
GUNLER$ geçerli bir ad değil uyarısı veriyor "SELECT gemi * FROM [GUNLER$]" olarak denediğimde ise ilk yazdığım hatayı veriyor
 
Eğer sizin için mümkün olabilirse, her iki dosyayının bir özetini gönderebilirseniz, belki bir
çözüme ulaşabiliriz, saygılar.
 
belirttiğim gibi ekleme yapamıyorum sanırım baya uğraşmam gerekecek teşekkürler
 
:) şans eseri çözdüm "SELECT [GUNLER.GEMI] FROM GUNLER" şeklinde kullandım sanırım * fazla geldi onu kaldırınca sorun düzeldi yinede yardımlarınız için çok teşekkürler
 
Geri
Üst