MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Compara tabelas de dois bancos e insere dados se não existirem

    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10605
    Registrado : 04/11/2009

    Compara tabelas de dois bancos e insere dados se não existirem Empty Compara tabelas de dois bancos e insere dados se não existirem

    Mensagem  JPaulo em 10/10/2017, 11:22

    Compara tabelas de dois bancos e insere dados não existentes.

    Código:
    Public Function ComparaImportaDadosNaoExistentes()
    '@jpaulo 2017-10-10
    'www.maximoaccess.com
    '
    'ESTE CÓDIGO DEVE SER INSERIDO NUM MÓDULO
    '******* ALTERAR APENAS O CAMINHO DO BANCO EXTERNO E NOME ********
    '
    'ESTE CÓDIGO NÃO PERMITE DUPLICAÇÃO DE DADOS
    'APENAS INSERE DADOS NÃO EXISTENTES EM TABELAS IGUAIS

    Dim sTable As String
    Dim strSQL As String
    Dim db As DAO.Database
    Dim tdf As DAO.TableDef

    On Error GoTo 1
    Set db = CurrentDb

    For Each tdf In db.TableDefs

    If Not (tdf.Name Like "MSys*" Or tdf.Name Like "~*") Then
            sTable = tdf.Name
            'aqui informo o banco onde estão os dados originais
            strSQL = "INSERT INTO ${sTable} SELECT * FROM [MS Access;DATABASE=C:\SeuBancoExterno.accdb;].[${stable}]"
            strSQL = Replace(strSQL, "${sTable}", sTable, 1, -1, vbTextCompare)
            CurrentDb.Execute "DELETE FROM " & sTable
            CurrentDb.Execute strSQL
    End If
    Next
        MsgBox "Completo...", vbInformation
    Set db = Nothing    
    Exit_1:
        DoCmd.Hourglass False
        DoCmd.Echo True
        Exit Function

    1:
        DoCmd.Hourglass False
        DoCmd.Echo True
        Dim Msg$
        Msg = "Erro # " & Str(Err.Number) & " gerado na " & Err.Source _
            & vbNewLine & vbNewLine & "Descrição: " & Err.Description _
            & vbNewLine & vbNewLine & "Por favor strConecttate o Administrador do Sistema."
        MsgBox Msg, vbMsgBoxHelpButton + vbCritical, "Erro"
        Resume Exit_1
    End Function


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    Compara tabelas de dois bancos e insere dados se não existirem Folder_announce_new Utilize o Sistema de Busca do Fórum...
    Compara tabelas de dois bancos e insere dados se não existirem Folder_announce_new 102 Códigos VBA Gratuitos...
    Compara tabelas de dois bancos e insere dados se não existirem Folder_announce_new Instruções SQL como utilizar...

      Data/hora atual: 4/12/2020, 13:26