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

    [Resolvido]Criando tabela a partir de consulta

    avatar
    orlandotosi
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 18/06/2010

    [Resolvido]Criando tabela a partir de consulta Empty [Resolvido]Criando tabela a partir de consulta

    Mensagem  orlandotosi 16/2/2011, 11:26

    É possivel se criar uma tabela access partindo de uma consulta onde, as colunas da nova tabela seriam os dados apontados nos registros colhidos da consulta. Exemplo. Uma consulta gera 05 nomes diferentes de empresas cadastradas. Ao criar a nova tabela as colunas criadas seriam Empresa A, Empresa B, Empresa C, Empresa D.... A criação da tabela seria semelhante ao resultado de uma consulta referencia cruzada com o diferencial que ao ter um formulario poderia editar e inserir valores, coisa que na referencia cruzada não consegui (acho que não é possivel). O mestre JPaulo, uma vez disponibilizou um código de criação de tabela temporaria, mas não consegui identificar onde preciso fazer as adapatações. Transcrevo abaixo o código por ele fornecido à epoca.

    Option Compare Database

    Public Function cmdCriatemp_Click()
    Dim rst As DAO.Recordset, _
    strSQL As String, _
    strSQL1 As String, _
    dbs As Database
    Set dbs = CurrentDb
    dbs.Execute "CREATE TABLE temp " _
    & "(ItensSC CHAR, Adicional CHAR, Unidades CHAR, Quantidade CHAR, " & "Valorestimado CHAR);"
    strSQL1 = "INSERT INTO temp ( ItensSC, Adicional, Unidades, Quantidade, Valorestimado ) " & "SELECT * FROM Cns_testeitem;"
    DoCmd.RunSQL strSQL1
    dbs.TableDefs.Delete "temp"
    End Function
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criando tabela a partir de consulta Empty Re: [Resolvido]Criando tabela a partir de consulta

    Mensagem  criquio 16/2/2011, 12:56

    Tentou tirar a linha em vermelho?

    Option Compare Database

    Public Function cmdCriatemp_Click()
    Dim rst As DAO.Recordset, _
    strSQL As String, _
    strSQL1 As String, _
    dbs As Database
    Set dbs = CurrentDb
    dbs.Execute "CREATE TABLE temp " _
    & "(ItensSC CHAR, Adicional CHAR, Unidades CHAR, Quantidade CHAR, " & "Valorestimado CHAR);"
    strSQL1 = "INSERT INTO temp ( ItensSC, Adicional, Unidades, Quantidade, Valorestimado ) " & "SELECT * FROM Cns_testeitem;"
    DoCmd.RunSQL strSQL1
    dbs.TableDefs.Delete "temp"
    End Function


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


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 18/06/2010

    [Resolvido]Criando tabela a partir de consulta Empty Re: [Resolvido]Criando tabela a partir de consulta

    Mensagem  orlandotosi 16/2/2011, 13:08

    Isso eu já havia identificado. Esse procedimento que o JPaulo havia passado criava a temp para uso e depois deletava-a. Minha duvida é onde adapatar para que esse codigo gere uma tabela composta não pelos campos que no codigo estão e sim por registros filtrados a partir de uma consulta, por exemplo Empresa A, Empresa B, Empresa C.....Essa tabela iria permitir que eu criasse um formulario usando-a para inserir dados, coisa que a consulta referencia cruzada não permite.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criando tabela a partir de consulta Empty Re: [Resolvido]Criando tabela a partir de consulta

    Mensagem  criquio 16/2/2011, 13:25

    A tabela terá número fixo de registros? Por exemplo 5 empresas? Se tiver, pode criar variáveis como:

    Dim Var1 As String, Var2 As String, Var3 As String, Var4 As String, Var5 As String,
    Var1 = DLookup("Campo", "Tabela", "Código=1")
    Var2 = DLookup("Campo", "Tabela", "Código=2")
    Var3 = DLookup("Campo", "Tabela", "Código=3")
    Var4 = DLookup("Campo", "Tabela", "Código=4")
    Var5 = DLookup("Campo", "Tabela", "Código=5")


    Depois, muda os valores do código para as variáveis:

    "(Var1 CHAR, Var2 CHAR, Var3 CHAR, Var4 CHAR, Var5 CHAR" & "Valorestimado CHAR);"

    Se tiver número variado de campos, aí precisará dar um loop.



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


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 18/06/2010

    [Resolvido]Criando tabela a partir de consulta Empty Re: [Resolvido]Criando tabela a partir de consulta

    Mensagem  orlandotosi 16/2/2011, 13:36

    vou tentar adaptar conforme sua orientação e testar. A principio, pelo historico, não tenho mais que seis ocorrencias de empresas. Pelo que entendi, no seu o "Codigo=1, ´Codigo=2..." seria uma ordem para inclusão na tabela a ser criada, certo? Para concluir, como eu conseguiria nomear essa tabela a ser criada, ao inves de Temp para um registro comum às empresas apontado na consulta. Exemplo. Todas as empresas serão filtradas na consulta por um numero de processo, 001/11. Onde coloco no codigo que o nome a ser assumido pela nova tabela seria 001/11 (Processo).

    Conteúdo patrocinado


    [Resolvido]Criando tabela a partir de consulta Empty Re: [Resolvido]Criando tabela a partir de consulta

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 15:04