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

    clonagem de colunas entre tabelas através de VBA

    avatar
    r_m_f_f
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 24
    Registrado : 07/06/2011

    clonagem de colunas entre tabelas através de VBA Empty clonagem de colunas entre tabelas através de VBA

    Mensagem  r_m_f_f 14/6/2011, 22:30

    Boa noite.

    Tendo uma tabela chamada orçamentos com os campos numeroOrcamento, Versao, Funcionario, aprovacao, queria copiar os dados que estão nestes campos para outra tabela chamada instalacoes que contém os campos iguais á orcamentos mais dois chamados dataconclusao, DataManutencao.

    como consigo fazer esta cópia através de VBA de modo a que este processo seja feito automaticamente após mudar o estado da aprovação para aprovado.

    cumprimentos.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  criquio 14/6/2011, 22:34

    Diga lá uma coisa: qual a finalidade de ter campos repetidos em duas tabelas? Explique como está a estrutura do seu aplicativo a nível de tabelas e relacionamentos.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    r_m_f_f
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 24
    Registrado : 07/06/2011

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  r_m_f_f 15/6/2011, 10:46

    o objectivo final é ter um sistema de orçamentação que consiste no seguinte, recebe-se e regista-se o pedido de orçamento,
    depois é gerado um código de orçamento e versão pois cada pedido de orçamento pode ter várias versões, cada versão vai ter o seu
    conjunto de productos á qual terá de ser gerado um relatório no final com a lista de produtos e preço final, quando o orçamento é aprovado
    é feita uma cópia da informação do respectivo orçamento (dados sobre numero de orçamento, versão e produtos) para duas tabelas uma que guarda
    os campos nº de orçamento e versão e mais dois campos (funcionário responsável e data de conclusão, estes dados são inseridos) e outra tabela que
    guarda os produtos do orçamento que posteriormente pode ser alterada pois pode ser preciso mais algum material, poor isso é que necessito de copiar
    campos de tabelas.

    eu tentei anexar a DB mas não consegui senão poderia ver a relações entre tabelas
    avatar
    r_m_f_f
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 24
    Registrado : 07/06/2011

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  r_m_f_f 16/6/2011, 16:51

    Boas, fiz um pequeno código para ver se conseguia clonar as colunas que queria mas está-me a dar um erro na parte do Update, o código é o seguinte:
    Dim DataBase As DataBase
    Dim rsDest, rsOrig, num As Recordset
    Dim i, n As Single
    Dim m As Variant
    Set DataBase = CurrentDb
    Set rsOrig = DataBase.OpenRecordset("SELECT nºOrçamento,Versão,PreçoFinal FROM Orçamentos WHERE aprovacao='Aprovado'")
    Set rsDest = DataBase.OpenRecordset("SELECT nºOrçamento,Versão,PreçoFinal FROM Orçamentos")
    Set num = DataBase.OpenRecordset("SELECT COUNT(nºOrçamento) FROM Orçamentos WHERE aprovacao='Aprovado'")
    m = num.GetRows
    n = m(0, 0)
    For i = 1 To (n - 1)
    rsDest.AddNew
    rsDest![nºOrçamento] = rsOrig![nºOrçamento]
    rsDest![Versão] = rsOrig![Versão]
    rsDest![PreçoFinal] = rsOrig![PreçoFinal]
    rsOrig.MoveNext
    rsDest.Update ' o erro está aqui
    Next i
    End Sub
    o erro que dá é o 3022

    alguém me consegue ajudar?

    abraço
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  criquio 16/6/2011, 17:20

    Tente colocar essa linha após a Next i.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  JPaulo 16/6/2011, 17:30

    Não sei se funfa

    Mas tente sempre simplificar os códigos;


    Dim rsDest, rsOrig As Recordset
    Dim m As Variant
    Dim i, x As Integer
    Set rsOrig = CurrentDb.OpenRecordset("SELECT [nºOrçamento],[Versão],[PreçoFinal] FROM Orçamentos WHERE aprovacao='Aprovado'")
    Set rsDest = CurrentDb.OpenRecordset("SELECT * FROM Orçamentos")
    x = DCount("[nºOrçamento]", "Orçamentos", "[aprovacao] = 'Aprovado'")

    For i = 1 To x - 1
    rsDest.AddNew
    rsDest![nºOrçamento] = rsOrig![nºOrçamento]
    rsDest![Versão] = rsOrig![Versão]
    rsDest![PreçoFinal] = rsOrig![PreçoFinal]
    rsDest.Update
    rsOrig.MoveNext
    Next i


    .................................................................................
    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

    clonagem de colunas entre tabelas através de VBA Folder_announce_new Utilize o Sistema de Busca do Fórum...
    clonagem de colunas entre tabelas através de VBA Folder_announce_new 102 Códigos VBA Gratuitos...
    clonagem de colunas entre tabelas através de VBA Folder_announce_new Instruções SQL como utilizar...
    avatar
    r_m_f_f
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 24
    Registrado : 07/06/2011

    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  r_m_f_f 16/6/2011, 23:06

    não está a dar, está a bater no rsDest.Update, diz que vai criar valores duplicados no index, não entendo porquê
    avatar
    Convidad
    Convidado


    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  Convidad 16/6/2011, 23:33

    então é porque um desses campos estão indexados.

    assim não deixa duplicar (clonar)

    Conteúdo patrocinado


    clonagem de colunas entre tabelas através de VBA Empty Re: clonagem de colunas entre tabelas através de VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 11/5/2024, 12:25