Excel ve SQL bağlantılı makroda yardım

Katılım
11 Ekim 2006
Mesajlar
3
Excel Vers. ve Dili
Excel 2003 Türkçe
Merhaba Arkadaşlar;
Ben excelde makro konusunda yeniyim. aşağıdaki makro hakkında bana fikir verirseniz sevinirim.

Sub sorgu()
With Sayfa2.QueryTables.Add(Connection:= _
"ODBC;DSN=Netsim1;UID=SYSDBA;PWD=masterkey;" _
, Destination:=Range("A1"))
.CommandText = Array( _
"SELECT AKTIF,CARI_KOD,CARI_UNVANI,CARI_TIP_NO from CARIKART")
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
End Sub

Yukardaki Kodu makro ya yadıktan sonra çalıştırınca kayıtlar geliyor, Fakat ikinci çalıştırmamda atıyorum d sütununda kalmışsa d sutunundan bi daha aynen kayıtları yazıyor.
Bunu bir sayfada kaçkere çalıştırırlırsa çaılıştırılsın hep aynı listelenmesini nasıl sağlarız.


2. bi sorumda SQL cumlesine exceldeki bi hucreden filitre koyabilirmiyiz.

bu konuda yardımcı olursanız sevinirim
 
Katılım
12 Mart 2005
Mesajlar
12
Excel Vers. ve Dili
EXCEL 2003 TÜRKÇE
ilk sorunuzu ben şu şekilde çözmüştüm.
sorgulama hücrelerinizin a:d sütunlarında olduğunu varsayarsak:
On Error Resume Next
Range("a:d").ClearContents
kodlarını sorgulama kodlarından önce yazın. sanırım sorun çözülecektir.
benim kendi kodlarım aşağıdaki gibidir:

On Error Resume Next
Range("a:d").ClearContents

adres = ThisWorkbook.FullName
yol = ThisWorkbook.Path
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DBQ=" & adres & ";DefaultDir=" & yol & ";Driver={Driver do Microsoft Excel(*.xls)};DriverId=790;FIL=excel 8.0;MaxB""" _
), Array( _
"ufferSize=2048;MaxScanRows=8;PageTimeout=5;ReadOnly=1;SafeTransactions=0;Threads=3;UserCommitSync=Yes;" _
)), Destination:=Range("A1"))


.CommandText = Array( _
"SELECT tablo2.P2WWXX, tablo2.P2DXXX, tablo2.P1SFMN, tablo2.P1ARNR, tablo2.duruş1, tablo2.DESE_G" & Chr(13) & "" & Chr(10) & "FROM `" & adres & "`.tablo2 tablo2")
.Name = "p2prapor"
.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
End With

2. sorunuz için maalesef herhangi bir bilgim yok. ancak aşağıdaki linkteki macro örneğinde anladığım kadarıyla dediğiniz olay kullanılmış.belki yardımcı olabilir.

http://www.excel.web.tr/showthread.php?t=20619&highlight=QueryTables
saygılar.
 
Son düzenleme:
Üst