Acessando o Banco de Dados SQL no Excel-VBA
Eu estou copiando um trecho de código VBA do MSDN que me mostra como obter resultados de uma consulta SQL em planilha do Excel (Excel 2007):
Sub GetDataFromADO()
'Declare variables'
Set objMyConn = New ADODB.Connection
Set objMyCmd = New ADODB.Command
Set objMyRecordset = New ADODB.Recordset
'Open Connection'
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;User ID=abc;Password=abc;"
objMyConn.Open
'Set and Excecute SQL Command'
Set objMyCmd.ActiveConnection = objMyConn
objMyCmd.CommandText = "select * from myTable"
objMyCmd.CommandType = adCmdText
objMyCmd.Execute
'Open Recordset'
Set objMyRecordset.ActiveConnection = objMyConn
objMyRecordset.Open objMyCmd
'Copy Data to Excel'
ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)
End Sub
Eu já adicionei o Microsoft ActiveX Data Objects 2.1 Library como referência. E esse banco de dados está acessível.
Agora, quando eu corro esta sub-rotina, tem um erro:
Erro em tempo de execução 3704: a operação não é permitida quando o objeto é fechado.
Na declaração:
ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)
Alguma ideia do porquê?
Obrigado.