Notifications
Clear all

fazer update em Access pelo Excel

4 Posts
2 Usuários
0 Reactions
1,366 Visualizações
(@franguelli)
Posts: 40
Eminent Member
Topic starter
 

Prezados colegas:

Preciso fazer uma atualização em uma tabela Access por meio de uma tabela do Excel.

O Access contém campos em branco, os quais devem ser atualizados conforme dados contidos na tabela do Excel.

Observem que a tabela do Excel está completa (dados em vermelho que estão faltando na tabela do Access)

Segue em anexo os dois arquivos.

Agradeço desde já quem puder me ajudar.

Obrigado.

 
Postado : 06/05/2016 3:08 pm
(@tarcelles)
Posts: 61
Trusted Member
 

Franguelli, Bom dia.

Segue o Arquivo editado em anexo e abaixo o Código utilizado.

Private Sub cmd_Atualiza_Click()
Dim Total_Registros As Integer

Call Conecta 'CLASE QUE REALIZAR A CONEXAO COM O BANCO DE DADOS

  Sheets("PLAN1").Select 'SELECIONO A "ABA" QUE ESTA OS DADOS

   Total_Registros = Cells(Cells.Rows.Count, "A").End(xlUp).Row  ' PEGO A QUANTIDADE DE REGISTRO QUE TEM NA PLAN1 LEVANDO COMO PARAMETRO A COLUNA A COD_CLI

        For I = 2 To Total_Registros   ' VOU COMEÇAR O LOOPING DA LINHA 2 ATE O TOTAL DE REGISTROS ENCONTRADOS
        
             ComandoSQL = "SELECT * FROM tabela_Cliente WHERE CodCli=" & CCur(Plan1.Range("A" & I)) & "" 'BUSCO NO BANCO DE DADOS O COD_CLI QUE ESTA NA PLAN
              Set consulta = banco.OpenRecordset(ComandoSQL)
              
                  If Not consulta.EOF Then  'SE O COD_CLI ESTIVER CADASTRADO, ALTERA COM O QUE ESTIVER DIGITADO NA PLAN
                            consulta.Edit
                            consulta("NOME") = Plan1.Range("B" & I)
                            consulta("ENDERECO") = Plan1.Range("C" & I)
                            consulta("BAIRRO") = Plan1.Range("D" & I)
                            consulta("CIDADE") = Plan1.Range("E" & I)
                            consulta.Update
                            consulta.MoveNext
                            
                   Else  'SE O COD_CLI NAO ESTIVER CADASTRADO, CRIA UM NOVO REGISTRO
                   
                            With consulta
                                   .AddNew
                                   .Fields("NOME") = Plan1.Range("B" & I)
                                   .Fields("ENDERECO") = Plan1.Range("C" & I)
                                   .Fields("BAIRRO") = Plan1.Range("D" & I)
                                   .Fields("CIDADE") = Plan1.Range("E" & I)
                                   .Update
                              End With
                  End If
          Next  'PULO PARA O SEGUNDO ITEM DA PLAN1
                   
          MsgBox "Dados Alterados/Cadastrados com Sucesso ! ", vbOKOnly, "Alteração"
              
              
              
End Sub
 
Postado : 11/05/2016 9:47 am
(@franguelli)
Posts: 40
Eminent Member
Topic starter
 

Bom dia Tarcelles, tudo bem?

Nossa!

Era isso mesmo que eu precisava, fez mais do que o esperado, de incluir novos registros.

Agradeço muito por compartilhar seu conhecimento comigo e com todos que possam precisar.

Muito obrigado

 
Postado : 12/05/2016 5:32 am
(@tarcelles)
Posts: 61
Trusted Member
 

De nada, se tiver alguma duvida poste novamente.

Marque o tópico como resolvido.

 
Postado : 12/05/2016 7:40 am