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

    Executar as consultas a partir de uma tabela com o nome delas

    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Executar as consultas a partir de uma tabela com o nome delas Empty Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  ilvecchio 13/1/2016, 16:38

    Buenas!

    1) Quero substituir uma macro que executa varios comandos: consultas criando tabelas, atualizando, acrescentando registros, excluindo tabelas ...

    2) Pensei em colocar o nome de cada uma numa tabela e depois, com código VBA, percorrer a tabela e ir executando um comando após outro.

    É possível? Alguém pode dar uma dica inicial para construir esse código?
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  Alvaro Teixeira 14/1/2016, 08:34

    Olá Luiz, para compreendermos e ajudar melhor, converta a Macro em VBA e poste.
    Abraço
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  ilvecchio 14/1/2016, 13:45

    Buenas!
    Imagine, então, que minha macro executa os comandos abaixo:


    DoCmd.OpenQuery "CriaTabela1", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela2", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela3", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela4", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela5", acViewNormal, acEdit
    DoCmd.DeleteObject acTable, "Tabela6"
    DoCmd.TransferDatabase acImport, "Microsoft Access", "C:\Teste\BaseTeste.mdb", acTable, "Tabela7", "Tabela7", False

    E cada nome de "consulta" seria um registro na tabela.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  Alvaro Teixeira 14/1/2016, 15:01

    Olá , a ideia é:

    a) simplificar esta duplicação de linhas:
    Código:
    DoCmd.OpenQuery "CriaTabela1", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela2", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela3", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela4", acViewNormal, acEdit
    DoCmd.OpenQuery "CriaTabela5", acViewNormal, acEdit

    b) ter uma tabela que vai guardar o nome das query executadas, com data hora e utilizador?

    Abraço
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  ilvecchio 14/1/2016, 17:56

    Buenas!

    Exatamente. Além de guardar a data e hora em que as consultas foram executadas, vou acrescentando cada uma numa listbox à medida que vão sendo executadas.
    Assim posso acompanhar o processo de execução, saber quanto já foi executado e, se der algum problema, também saber em que consulta foi.

    Sei que a parte em negrito pode ser feita sem o uso de tabela, mas acho mais limpo com ela. Além de ter uma lista organizada das tarefas.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  Alvaro Teixeira 14/1/2016, 18:01

    Olá, pretende fazer tipo ficheiro de log.
    E quanto à questão A da minha última mensagem....?
    Abraço
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 137
    Registrado : 16/11/2012

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  ilvecchio 15/1/2016, 11:53

    Buenas!

    Sim, pois se o nome constar na tabela, não será explicitado no código. E a manutenção também será facilitada.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7995
    Registrado : 15/03/2013

    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  Alvaro Teixeira 15/1/2016, 17:33

    Olá, acho que ainda não compreendi bem o que pretende.
    Mas por partes, para simplifcar a duplicação das consultas, teste assim:

    Dim x
    For x = 1 to 5 then
    DoCmd.OpenQuery "CriaTabela" &x, acViewNormal, acEdit
    Next

    Código não testado.
    Abraço

    Conteúdo patrocinado


    Executar as consultas a partir de uma tabela com o nome delas Empty Re: Executar as consultas a partir de uma tabela com o nome delas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 06:16