VBA kodu hata veriyor SQL den veri almada kullanılan
Arkadaşlar merhaba,
Aşağıdaki sorguyu SQL de problemsiz çalıştırıyorum. Excelde vba ile yaptığımda Set rs = evn.Execute(S) satırında
Run-Time error '-2147217900 (80040e14)': automation error
veriyor bu konuda nerede hata yapıyorum yardımcı olabilir misiniz
Sub SORGU1()
Dim evn As Object, rs As Object
Set evn = CreateObject("adodb.connection")
evn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=ETA_EKER_2010;" & _
"Data Source=pab;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AHMET;Use Encryption " & _
"for Data=False;Tag with column collation when possible=False"
S = "SELECT CSNKART.CSKVADETAR AS [VADE TARİHİ], CSNKART.CSKPORTFOYNO AS [PORTFÖY NO],CSNKART.CSKSONVERADI AS [ÇIKIŞ KART ADI], CSNKART.CSKACIK1 AS [AÇIKLAMA], BANKHESAP.BANHESADI AS [BANKA ADI], CSNKART.CSKBANCEKNO AS [BANKA ÇEK NO], CSNKART.CSKTUTAR AS TUTARI, CSNKART.CSKSONHARPOZKOD AS [ÇEKİN DURUMU], CSNKART.CSKMUHKODU AS [MUHASEBE KODU], ISNULL" & _
"((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00)" & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 1), 0) AS [MUHASEBE BORÇ TOPLAMI], ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 2), 0) AS [MUHASEBE ALACAK TOPLAMI], ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 1), 0) - ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 2), 0) AS [MUHASEBE BAKIYE TOPLAMI]" & _
"FROM CSNKART INNER JOIN BANKHESAP ON CSNKART.CSKBANHESBANKOD = BANKHESAP.BANHESBANKOD" & _
"WHERE CSKMUHKODU IN (SELECT MUHKOD FROM MUHHESAP)" & _
"ORDER BY CSNKART.CSKVADETAR"
Set rs = evn.Execute(S)
For i = 0 To rs.Fields.Count - 1
Cells(2, i + 1).Value = rs.Fields(i).Name
Next i
Range("A3").CopyFromRecordset rs
Set rs = Nothing: evn.Close: Set evn = Nothing
End Sub
Arkadaşlar merhaba,
Aşağıdaki sorguyu SQL de problemsiz çalıştırıyorum. Excelde vba ile yaptığımda Set rs = evn.Execute(S) satırında
Run-Time error '-2147217900 (80040e14)': automation error
veriyor bu konuda nerede hata yapıyorum yardımcı olabilir misiniz
Sub SORGU1()
Dim evn As Object, rs As Object
Set evn = CreateObject("adodb.connection")
evn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=ETA_EKER_2010;" & _
"Data Source=pab;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AHMET;Use Encryption " & _
"for Data=False;Tag with column collation when possible=False"
S = "SELECT CSNKART.CSKVADETAR AS [VADE TARİHİ], CSNKART.CSKPORTFOYNO AS [PORTFÖY NO],CSNKART.CSKSONVERADI AS [ÇIKIŞ KART ADI], CSNKART.CSKACIK1 AS [AÇIKLAMA], BANKHESAP.BANHESADI AS [BANKA ADI], CSNKART.CSKBANCEKNO AS [BANKA ÇEK NO], CSNKART.CSKTUTAR AS TUTARI, CSNKART.CSKSONHARPOZKOD AS [ÇEKİN DURUMU], CSNKART.CSKMUHKODU AS [MUHASEBE KODU], ISNULL" & _
"((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00)" & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 1), 0) AS [MUHASEBE BORÇ TOPLAMI], ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 2), 0) AS [MUHASEBE ALACAK TOPLAMI], ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 1), 0) - ISNULL " & _
" ((SELECT ISNULL(SUM(MUHHARTUTAR), 0.00) " & _
" FROM MUHHAR " & _
" WHERE MUHHARMUHKOD = CARMUHKODU AND MUHHARBATIPI = 2), 0) AS [MUHASEBE BAKIYE TOPLAMI]" & _
"FROM CSNKART INNER JOIN BANKHESAP ON CSNKART.CSKBANHESBANKOD = BANKHESAP.BANHESBANKOD" & _
"WHERE CSKMUHKODU IN (SELECT MUHKOD FROM MUHHESAP)" & _
"ORDER BY CSNKART.CSKVADETAR"
Set rs = evn.Execute(S)
For i = 0 To rs.Fields.Count - 1
Cells(2, i + 1).Value = rs.Fields(i).Name
Next i
Range("A3").CopyFromRecordset rs
Set rs = Nothing: evn.Close: Set evn = Nothing
End Sub
Son düzenleme: