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


3 participantes

    [Resolvido]Importar dados de uma tabela para outra

    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 15/1/2018, 13:26

    Olá a todos,

    Preciso de ajuda com código para o seguinte

    Tenho uma tabela importastock com 2 campos (número)
    Codmp
    Stock
    E pretendo criar um registro na tabela detalhefichprep  
    Com os campos codfichorep, codmp e quantidade (número)

    Em que codfichprep = 354 para todos os registos da tabela codmp e respetiva quantidade= stock

    Obrigado
    Smile
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  FabioPaes 15/1/2018, 15:46

    Olá! Dê uma pesquisada aqui no Site, exitem inúmeros exemplos distintos sobre sua dúvida! Eu mesmo já devo ter postado uns 3 na sala de repositórios.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 15/1/2018, 22:47

    Boas,

    Estava a pensar em algo do género:

     

    Declare @Campos varchar(8000)

    Set @Campos = Campo1,Campo2,Campo3, etc

    Exec('insert into tabela (' + @campos+ ') select ' + @campos + 'from tabela2'

     Mas como faço para o campo 1 ser sempre 9999, sendo que a tabela de origem só tem os campos 2 e 3?

    Obrigado
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 16/1/2018, 19:54

    Boas!

    já está quase resolvido Smile



    Private Sub ResetStock_Click()

    If MsgBox("Confirma o reset dos stocks ?" & vbCr & NomeManip, vbYesNo + vbDefaultButton2) = vbYes Then

    DoCmd.RunSQL "INSERT INTO DetalheFichPrep (CodMP,Quantidade) SELECT CodMP,Quantidade FROM ImportaStock"

    End If

    End Sub

    Só falta inserir na tabela de destino (DetalheFichPrep), no campo CodFichPrep (que não está na tabela de origem) um valor fixo 9999

    Agradeço a Vossa ajuda.

    Smile
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  FabioPaes 17/1/2018, 13:42

    Olá! Se Utilizar o método RecordSet poderá fixar esse Valor no Campo...

    Mas se caso esse valor nunca mude, seja sempre isso... Pode fixar direto na tabela, na propriedade do Campo, Valor Padrão, coloque esse valor... Assim, qnd nao for informado (no caso da importação) ele receberá esse valor padrão.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 17/1/2018, 15:25

    Boas!

    O valor desse campo muda sempre; apenas nesta situação é que será um valor fixo.

    Quanto ao recordset, não sei bem como usar....

    Entretanto, aparece uma mensagem de erro que monstro em anexo, mas se clicar em sim, faz o que pretendo, no entanto, preferia que essa mensagem não surgisse.


    Mais, sempre cria uma nova tabela: ExportaStock$_Importa erros ,  com
    Tenho isto:

    Private Sub ResetStocks_Click()

    If MsgBox("Deseja excluir TODOS os registros da tabela Importa Stocks ?" & vbCr & NomeManip, vbYesNo + vbDefaultButton2) = vbYes Then

    CurrentDb.Execute "DELETE FROM ImportaStock;"

    MsgBox "Todos os registros foram excluidos...", vbInformation, "Aviso"

    End If

       stDocName = "ResetStocksMacro"
       DoCmd.RunMacro stDocName

    If MsgBox("Confirma o reset dos stocks ?" & vbCr & NomeManip, vbYesNo + vbDefaultButton2) = vbYes Then
                     
    DoCmd.RunSQL "INSERT INTO DetalheFichPrep (CodMP,Quantidade) SELECT CodMP,Quantidade FROM ImportaStock"

    End If

    Set Rst = Nothing

    MsgBox "Reset dos Stocks concluido", vbInformation, "Aviso"

    DoCmd.Close
       stDocName = "Manut"
       
       DoCmd.OpenForm stDocName, , , stLinkCriteria

    End Sub





    Mais uma vez,

    Obrigado
    Anexos
    [Resolvido]Importar dados de uma tabela para outra AttachmentSem Título-1.pdf
    Você não tem permissão para fazer download dos arquivos anexados.
    (168 Kb) Baixado 11 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  FabioPaes 17/1/2018, 17:06

    A mensagem refere-se a dois registros que violaram as regras de validação de alguma campo... Na tabela ExportaStock$_Importa erros terá o Nome do Campo e o Valor que não foi importado. Verifique o que tem de errado...

    Veja nesse Vídeo como é feito a utilização de RecordSet:
    https://www.maximoaccess.com/t30841-entrada-saida-de-estoque-no-clique-de-um-botao

    Recomendo dar uma lida nesses Tópicos, todos sobre Importação de Dados do Excel.
    https://www.maximoaccess.com/t29052-importar-do-excel-atraves-de-recordset-informando-a-coluna-e-nao-nome-dos-campos-excel?highlight=importar
    https://www.maximoaccess.com/t27311-importar-dados-planilha-excel-e-desmembrar-os-dados-em-duas-tabelas-tbpessoa-e-tbendereco?highlight=importar
    Esse é mais Completo:
    https://www.maximoaccess.com/t26911-importar-planilha-excel-informando-a-tabela-de-destino-a-folha-sheets-de-origem-e-localizando-o-documento-excel?highlight=importar


    Veja aqui como devem ser postado os Anexos no Fórum...
    https://www.maximoaccess.com/t32003-como-postar-anexos-e-imagens-no-site-maximoaccess-com


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 17/1/2018, 22:52

    Obrigado Fábio!

    Vou ver
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Alexandre Neves 18/1/2018, 16:54

    Boa tarde, Pedro
    Em vez de
    DoCmd.RunSQL "INSERT INTO DetalheFichPrep (CodMP,Quantidade) SELECT CodMP,Quantidade FROM ImportaStock"

    Utiliza
    DoCmd.RunSQL "INSERT INTO DetalheFichPrep (CodMP,Quantidade,CodFichPrep ) SELECT CodMP,Quantidade,'9999' FROM ImportaStock"

    Cumprimentos,


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 20/1/2018, 12:36

    Grande Alexandre!
    Faz exatamente que pretendo, apesar de ainda dar o erro ao importar a tabela.
    Já está quase Smile
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Alexandre Neves 20/1/2018, 14:22

    Boa tarde, Pedro
    Tenta
    DoCmd.RunSQL "INSERT INTO DetalheFichPrep (CodMP,Quantidade,CodFichPrep ) SELECT CodMP,Quantidade,9999 FROM ImportaStock"


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 23/1/2018, 13:52

    Boas!

    Também funciona bem Alexandre.

    O problema afinal não está no código, mas sim na macro que mando executar no início do comando


       stDocName = "ResetStocksMacro"
       DoCmd.RunMacro stDocName

    Que importa os dados de uma folha do excell para a tabela importastock.
    Anexos
    [Resolvido]Importar dados de uma tabela para outra AttachmentSem Título-3.pdf
    Você não tem permissão para fazer download dos arquivos anexados.
    (243 Kb) Baixado 10 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Alexandre Neves 26/1/2018, 21:02

    Boa noite Pedro,
    Já não tenho a bd para verificar
    Disponibiliza a bd e informa o que não faz e devia fazer
    Abraço


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 29/1/2018, 19:17

    Boas Alexandre Smile

    Anexo parte da BD


    Entretanto, aparece uma mensagem de erro que anexei atrás mas, se clicar em sim, faz o que pretendo, no entanto, preferia que essa mensagem não surgisse.

    Mais, sempre cria uma nova tabela: ExportaStock$_Importa erros
    Anexos
    [Resolvido]Importar dados de uma tabela para outra AttachmentDB_TEST.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.9 Mb) Baixado 15 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Alexandre Neves 4/2/2018, 15:51

    Boa tarde, Pedro
    Não enviaste o ficheiro de importação
    Descreve qual o problema na importação que é preciso alterar
    Em vez de teres macro para a importação, pensa em criar rotina de importação através do VBA. Podes ajustar em cada registo as consições que pretendes
    Abraço,


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 5/2/2018, 10:50

    Viva Alexandre Smile

    Anexo a folha de cálculo .


    A macro importa todos os dados para a tabela importastock com os mesmos nomes.

    Obrigado
    Smile
    Anexos
    [Resolvido]Importar dados de uma tabela para outra AttachmentExportastock.xlsx
    Você não tem permissão para fazer download dos arquivos anexados.
    (27 Kb) Baixado 16 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Alexandre Neves 5/2/2018, 21:17

    Boa noite, Pedro
    Revê os dados no Excel
    Ordenei a 2ª coluna com expansão de dados e a 1ª linha ficou dados em branco (serão dados nulos no ficheiro que não respeitam as regras dos campos na importação). Eliminei essa linha em branco e importei sem erros


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 15/2/2018, 19:06

    Boas!

    Ainda não sei como fica essa linha em branco pois essa folha do excel é resultado de uma exportação de uma BD.

    De qualquer modo, apesar de não estar perfeito, já faz o que pretendo,

    Obrigado pela ajuda!

    Abraços Smile

    avatar
    pjjpm
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 80
    Registrado : 17/09/2014

    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  pjjpm 15/2/2018, 19:09

    Obrigado Smile

    Conteúdo patrocinado


    [Resolvido]Importar dados de uma tabela para outra Empty Re: [Resolvido]Importar dados de uma tabela para outra

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 00:17