Automatische database koppeling via VBA en Microsoft Query
In Excel is een koppeling met een database via Microsoft Query handmatig te leggen. Het kan ook via VBA:
Sub toevoegenMQ()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim strODBC As String, strBlad As String, strSQL As String
strODBC = "noordenwind" 'Deze DSN moet wel bestaan, voor database Noordenwind
strBlad = "klanten"
'wissen data en verwijderen ms query
Sheets(strBlad).Activate
Sheets(strBlad).Range("a:k").QueryTable.Delete
Sheets(strBlad).Range("a:k").ClearContents
ActiveWorkbook.Save
'strSQL bepalen
strSQL = " SELECT * FROM klanten WHERE land = 'Duitsland'"
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=" & strODBC & ";", Destination:=Sheets(strBlad).Range("a1"))
.CommandText = strSQL
.Name = "qry" & strBlad
.Refresh BackgroundQuery:=False
End With
ActiveWorkbook.Connections.Item("Verbinding").Name = strBlad
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Reacties