SQL macro ved Excel 2000 til Excel 2002
Jeg har haft nedenstående query i Excel 2000 men ved opgrad til 2003 forsvandt reference XLODBC.xla som valg(?). Hvordan får jeg SQL delen til at fungere igen :SQLConnectionID = SQLOpen("CSF=No;DRIVER={C/ODBC 32 bit};DSN=Navision DATA DK;PPath=C:\Program Files\Navision Financials;CSF=Yes;Database=F:\navision.fdb;CN=HB DK;SName=HB-SVR01-DK;NType=tcp;Option=Text;IT=All Characters;QTYesNo=Yes;RO=YES;CC=Yes;BE=Yes;UID=YYY;PWD=XXX", , 3)
SQLExecQuery connectionNum:=SQLConnectionID, _
queryText:="SELECT ""G/L Account"".""Balance at Date""" & Chr(13) & "" & Chr(10) & "FROM ""G/L Account"" ""G/L Account""" & Chr(13) & "" & Chr(10) & "WHERE (""G/L Account"".""Date Filter""='" & dato3 & "') AND (""G/L Account"".""No.""='8645')"
SQLRetrieve _
connectionNum:=SQLConnectionID, _
destinationRef:=Worksheets("ARKTEST").Cells(6, 4), _
ColNamesLogical:=False
SQLExecQuery connectionNum:=SQLConnectionID, _
queryText:="SELECT Sum(Vendor.""Balance Due (LCY)"") " & Chr(13) & "" & Chr(10) & "FROM Vendor Vendor" & Chr(13) & "" & Chr(10) & "WHERE (Vendor.""Date Filter""='<" & dato & "') " & Chr(13) & "" & Chr(10) & "GROUP BY Vendor.""Purchaser Code"""
SQLRetrieve _
connectionNum:=SQLConnectionID, _
destinationRef:=Worksheets("ARKTEST").Cells(6, 8), _
ColNamesLogical:=False
Do ' Outer loop.
Do While counter < nodays ' Inner loop.
counter = counter + 1
Worksheets("ARKTEST").Cells(n, r - 1).Value = dato
SQLExecQuery connectionNum:=SQLConnectionID, _
queryText:="SELECT Sum(Vendor.""Balance Due (LCY)"") " & Chr(13) & "" & Chr(10) & "FROM Vendor Vendor" & Chr(13) & "" & Chr(10) & "WHERE (Vendor.""Date Filter""='" & dato & "')" & Chr(13) & "" & Chr(10) & "GROUP BY Vendor.""Purchaser Code"""
SQLRetrieve _
connectionNum:=SQLConnectionID, _
destinationRef:=Worksheets("ARKTEST").Cells(n, r), _
ColNamesLogical:=False
SQLExecQuery connectionNum:=SQLConnectionID, _
queryText:="SELECT Sum(Vendor.""Payments (LCY)"") " & Chr(13) & "" & Chr(10) & "FROM Vendor Vendor" & Chr(13) & "" & Chr(10) & "WHERE (Vendor.""Date Filter""='" & dato & "')" & Chr(13) & "" & Chr(10) & "GROUP BY Vendor.""Purchaser Code"""
SQLRetrieve _
connectionNum:=SQLConnectionID, _
destinationRef:=Worksheets("ARKTEST").Cells(n, r + 1), _
ColNamesLogical:=False
If counter = 60 Then ' If condition is True.
Check = False ' Set value of flag to False.
Exit Do ' Exit inner loop.
End If
n = n + 1
dato2 = dato2 + 1
dato = Format(dato2, "mmddyyyy")
Loop
Loop Until Check = False
SQLClose connectionNum:=SQLConnectionID
Application.Calculation = xlAutomatic
