Basole, boa noite.
Muito obrigado pelo retorno.
Sua resposta foi fundamental para conseguir executar a macro...
Porém surgiu uma outra duvida que infelizmente não encontrei a resposta até agora.
Com a macro a seguir eu consigo fazer o seguinte.
Acessar a base de dados do excel, trazer os registros, deletar a planilha e passar para a próxima.
Veja a seguir.
Código: Selecionar todosSub TESTE()
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Dim sql As String, pasta As Object, c As Object, fso As Object, arquivos As Object
Dim proxima As Long
Set fso = CreateObject("Scripting.FileSystemObject")
Set pasta = fso.GetFolder(ThisWorkbook.Path & "\REPORTE")
Set arquivos = pasta.Files
Application.DisplayAlerts = False
Application.ScreenUpdating = False
For Each c In arquivos
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
With cn
.Provider = "Microsoft.ACE.Oledb.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.Path & _
"\REPORTE\" & c.Name & ";" & "Extended Properties=Excel 12.0"
.Open
End With
With rs
.ActiveConnection = cn
.CursorType = adOpenKeyset
.LockType = adLockBatchOptimistic
sql = "select * from [Planilha1$]"
.Open sql
End With
proxima = Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ThisWorkbook.Sheets("A PAGAR").Range(Cells(proxima, 1), Cells(proxima, 1)).CopyFromRecordset rs
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
Kill ThisWorkbook.Path & "\REPORTE\" & c.Name
Next c
End Sub
Porém no final do quebra-cabeça ainda falta 1 peça, o banco de dados excel é criptografado com senha(cuja senha eu defini e sei).
Ai eu volto a estaca zero...rsrsrs
Eu já sei conectar a um access com senha, mas excel não.
Já tentou uma rotina como essa antes?