Excel e Access – Gravando Dados do Excel no Access via VBA (macro)
1 – Primeiro você deve criar uma tabela no Access onde guardará as informações.
Mais detalhes de como criar uma tabela no Access no link abaixo:
Criando uma tabela no Access
2 – Após criar a Tabela1 acima vamos criar uma macro para gravar os dados conforme abaixo:
Sub
GravaAccess()
Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim r As Long Set cn = New ADODB.Connection DBname = "C:\Temp\Banco de Dados.mdb" stDB = DBname stConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & stDB & ";" With cn .Open (stConn) .CursorLocation = adUseClient End With Set rs = New ADODB.Recordset rs.Open "Tabela1", cn, adOpenKeyset, adLockOptimistic, adCmdTable r = 2 Do While IsEmpty(Range("A" & r)) = False With rs .AddNew .Fields("Nome") = Range("A" & r).Value .Fields("Telefone") = Range("B" & r).Value .Update End With r = r + 1 Loop rs.Close Set rs = Nothing cn.Close Set cn = Nothing
End Sub
3 – Pronto agora é só associar a macro “GravaAccess” ao botão desejado.
Caso queria esse arquivo, favor enviar um email para contato@exceleaccess.com solicitando.
Obrigado pela visita!
www.exceleaccess.com
contato@exceleaccess.com
www.exceleaccess.com
www.exceleaccess.com
www.exceleaccess.com
SUPIMPA, procurei muito por isto, um código sem SQL. Não sei pq mas não rodava nenhum que fosse SQL, esse finalmente funcionou e ainda por cima, na versão .ACCDB.
Grato.
Linha para ACCDB:
stConn = “Provider=Microsoft.ACE.OLEDB.12.0;” & “Data Source=” & stDB & “;Persist Security Info=False;”
Que ótima notícia Benjamin!
Obrigado pelo comentário.