Olá Felipe, infelizmente só sei fazer este tipo de operação com o DAO. Sei o quanto é obsoleto, mas é apenas uma integração simples.
Acredito que o ADO não seja muito diferente a programação, mas confesso que não sei como fazer.
--------------------
Private Sub CommandButton1_Click()
'após clicar no botão, ele roda o código
Dim db As DAO.Database
Dim rst As DAO.Recordset
'algumas variáveis conforme o filtro que o usuário escolher
ano = Plan1.ComboBox1.Value
mes = Plan1.ListBox1.Value
aba = Plan1.ListBox2.Value
referencia = "1/" & CByte(Mid(mes, 1, 2)) & "/" & ano
'outra variável com base nas informações da planilha, uma pequena chave
For a = 1 To 10
If aba = Plan2.Cells(a, 2) Then
setor = Plan2.Cells(a, 3)
Exit For
Else
setor = Null
End If
Next
arquivo = "FECHAMENTO " & Mid(mes, 4, 20) & " " & setor & " " & ano
Set db = OpenDatabase(ThisWorkbook.Path & "" & ano & "" & mes & "" & arquivo & ".xls", False, True, "Excel 8.0;")
Set rst = db.OpenRecordset("SELECT * FROM [" & aba & "$] ")
'Recordset com base na informação que o usuário escolher
Plan1.Cells(1, 1) = rst!F2
Plan1.Cells(1, 2) = rst!F3
Plan1.Cells(1, 3) = rst!F4
-------------------
Os campos F2 e F3 consegue puxar a informação, porém o campo F4 é o problema, ele informa o "estouro do campo numérico" justamente por não identificar o tipo de informação a ser utilizada, se é texto ou número.
Obrigado.
Postado : 28/08/2015 5:53 am