MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


2 participantes

    Copiar dados de tabelas para uma tabela

    avatar
    Macopio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 4
    Registrado : 25/01/2012

    Copiar dados de tabelas para uma tabela Empty Copiar dados de tabelas para uma tabela

    Mensagem  Macopio 19/2/2013, 13:37

    Boa tarde,

    Pedia ajuda na resolução do seguinte problema:

    Tenho 3 tabelas diferentes (Header, Detalhe e Trailler). Pretendo por SQL adicionar as 3 tabelas numa única (TABx)pela sequência (Header -> Detalhe -> Trailler). O comprimento das tabelas são iguais mas conteúdo dos campos não. Tentei isto e ocorre erro "Run-time error 3134 (erro de sintaxe na instrução INSERT INTO)


    Private Sub Fechar_Click()
    Dim strSQL As String

    strSQL = ""
    strSQL = strSQL & "INSERT INTO TABx"
    strSQL = strSQL & "SELECT * FROM Header"
    CurrentDb.Execute strSQL

    ...
    avatar
    Convidado
    Convidado


    Copiar dados de tabelas para uma tabela Empty Re: Copiar dados de tabelas para uma tabela

    Mensagem  Convidado 19/2/2013, 14:11

    Manda o BD ai amigao para que possamos ver pra ti.

    Cumprimentos.
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    Copiar dados de tabelas para uma tabela Empty Re: Copiar dados de tabelas para uma tabela

    Mensagem  Silvio 19/2/2013, 14:49

    Boas...

    Passei por uma situação como essa há algumas semanas atrás. Eis o código cedido pelo Claudio Más, aqui do nosso fórum.

    Dim strSQL As String

    If MsgBox(" Deseja salvar esse cliente ?", vbOKCancel + vbDefaultButton1 + vbInformation, "Aviso !!") = vbOK Then
    strSQL = "INSERT INTO tblTelefones (IDCliente, CPF, CNPJ) VALUES (" & Me.Idcliente.Value & ", '" & Me.CPF.Value & "', '" & Me.CNPJ.Value & "')"
    CurrentDb.Execute strSQL

    strSQL = "INSERT INTO tblhistorico (IDCliente, CPF, CNPJ) VALUES (" & Me.Idcliente.Value & ", '" & Me.CPF.Value & "', '" & Me.CNPJ.Value & "')"
    CurrentDb.Execute strSQL

    End If

    Adapte-o a tuas necessidades.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    Copiar dados de tabelas para uma tabela Empty Re: Copiar dados de tabelas para uma tabela

    Mensagem  Silvio 19/2/2013, 14:59

    Lembrando que existe uma outra maneira de fazer o mesmo. Veja:

    Private Sub EventoRealizado_Click()
    Dim db1 As Database, db2 As Database, rs1 As DAO.Recordset, rs2 As DAO.Recordset, rs3 As DAO.Recordset
    If MsgBox("Confirma a Realização do Evento ?", vbYesNo + vbQuestion, "SIS CLICK") = vbYes Then

    Set db1 = CurrentDb
    set db2 = CurrentDb
    set db3 = CurrentDb



    Set rs1 = db1.OpenRecordset("Header", dbOpenTable)

    Set rs2 = db2.OpenRecordset("Detalhes", dbOpenTable)

    With rs1
    ' os campos abaixo do formulário tem que ser iguais aos que estão na tabela para realizar a exportação
    .AddNew
    ' campos que estão na tabela = campos do fomulario
    ![seucampo1] = Me.seucampo1
    ![seucampo2] = Me.seucampo2
    ![seucampo3] = Me.seucampo3

    with rs2
    ' os campos abaixo do formulário tem que ser iguais aos que estão na tabela para realizar a exportação
    .AddNew

    ![seucampo4] = Me.seucampo4
    ![seucampo5] = Me.seucampo5
    ![seucampo6] = Me.seucampo6


    .Update

    End With

    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.RunCommand acCmdRefresh
    DoCmd.GoToRecord , , acNewRec

    MsgBox "Encerramento confirmado...", vbOKOnly + vbInformation, "Aviso"
    End If
    End Sub

    você pode definir utilizando o dim DB2 para outra tabela, o dim DB3 para outra tabela.

    Adapte-o conforme as tuas necessidades e bons estudos para ti.

    Abraços.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."

    Conteúdo patrocinado


    Copiar dados de tabelas para uma tabela Empty Re: Copiar dados de tabelas para uma tabela

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 03:13