Pessoal, tudo bem?
Estou com um problema aparentemente fácil de se resolver, porém me falta as habilidades...rsrsr
O que se passa é que tenho um banco de dados no Access que recebe atualizações de tabelas oriundas de diversas bases em Excel.
A grande questão é que a tentar atualizar a tabela no Access, os valores não são importados pois o banco reconhece que ja existem essas informações na tabela e por isso nao atualiza. A intenção é que os resultados sejam exportados do Excel para o Access mas que nao sejam adicionadas novas linhas, ou seja, apenas as linhas originais ta base. O que eu preciso é que seja feita sempre uma sobrescrição em vez de adição no banco de dados.
O codigo que fiz é este:
Sub transfere()
'Cria variável que armazena os comandos SQL
Dim ComandoSQL As String
Sheets("consolidado").Select
ActiveWorkbook.RefreshAll
'looping das colunas
Sheets("consolidado").Range("A2").Select
'lopping das linhas
Do While ActiveCell <> ""
linha = ActiveCell.Row
'Armazena na variável o comando que fará a consulta SQL no BD Access
ComandoSQL = "select * from Exatidao_Trato"
'Chama a rotina que faz a conexão com o BD
Call Conecta
'Atribui a variável de Objeto de BD a execução dos comandos SQL
Set consulta = banco.OpenRecordset(ComandoSQL)
With consulta
'Abre o Recordset do BD para inserção
.AddNew
.Fields("Fazenda") = Sheets("consolidado").Cells(linha, 1) 'fazenda
.Fields("Periodo") = Sheets("consolidado").Cells(linha, 2) 'Periodo
.Fields("Meta") = Sheets("consolidado").Cells(linha, 3) 'Meta
.Fields("Resultado") = Sheets("consolidado").Cells(linha, 4) 'resultado
.Fields("Acumulado") = Sheets("consolidado").Cells(linha, 5) 'Acumulado
'Se houver erro
On Error Resume Next
'Efetiva a atualização do BD
.Update
'Fecha o Recorset e a conexão com o BD
consulta.Close
banco.Close
'Chama a rotina que desconecta do BD (libera variáveis objeto de BD)
Call Desconecta
ActiveCell.Offset(1, 0).Select
End With
Loop
'Exibe mensagem de sucesso na inclusão do registro
MsgBox "Dados registrados na base central! ", vbDefaultButton1, "Fabrica Virtual"
'Abandona a subrotina
Exit Sub
End Sub
Poderiam me ajudar com isso!!???
Obrigado.
Postado : 21/10/2015 7:01 pm