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]Criar tabela com SQL VBA

    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criar tabela com SQL VBA Empty [Resolvido]Criar tabela com SQL VBA

    Mensagem  ilvecchio 27/10/2014, 11:50

    Buenas!
    Estou substituindo, dentro de códigos VBA, de alguns formulários, as consultas por SQL. Estava indo tudo muito bem, até substituir uma que cria tabela.
    Vinha criando a partir do SQL da própria consulta, mas aí não funcionou (erro 13, tipos incompatíveis : não mostra onde está o erro, marca toda a instrução SQL).
    Na Web não encontrei exemplos que usem duas tabelas para criar outra. Só tem para criar a partir do zero.

    O SQL da minha consulta é este

    SELECT [TabBase].Cliente, Left([TabBase]!Setor,3) & " - " & [TabBase]![Tipo] AS SetorTipo, [TabBase].Empresa1, [TabBase].CodCliente, False AS Marcar, [TabEndereco].CodEnd INTO TabTemporariaFormControle
    FROM TabBase INNER JOIN TabEndereco ON [TabBase].CodCliente = [TabEndereco].CodCliente
    WHERE ((([TabEndereco].CodCliente)=FunCodCliente()));

    CodCliente é texto, FunCodCliente é uma função com uma variável que contém o CodCliente (com o SQL colocarei a variável ).

    Alguém pode me ajudar?
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  Avelino Sampaio 27/10/2014, 12:33

    Olá!

    Coloque a função fora da string e observe o uso dos apóstrofes já que o campo codCliente é do tipo String:

    currentdb.execute = "SELECT... WHERE TabEndereco.CodCliente= '" & FunCodCliente() & "';"

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  ilvecchio 27/10/2014, 13:15

    Obrigado, Avelino.

    O Erro continua. Descobri que não aceita a concatenação dos campos Setor e Tipo, ambos do tipo texto:

    SELECT [TabBase].Cliente, Left([TabBase]!Setor,3) & " - " & [TabBase]![Tipo] AS SetorTipo, ...

    Se eu tirar  um dos segmentos  Left([TabBase]!Setor,3) & " - " & ou  & " - " & [TabBase]![Tipo], aí funciona.

    Como contorno esse problema? É um erro na sintaxe?
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  Avelino Sampaio 27/10/2014, 13:47

    Escreva aqui exatamente como está a SQL no seu VBA

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  ilvecchio 27/10/2014, 14:01

    Avelino, está igual o post:

    DoCmd.RunSQL "SELECT [TabBase].Cliente, Left([TabBase]!Setor,3) & " - " & [TabBase]![Tipo] AS SetorTipo, [TabBase].Empresa1, [TabBase].CodCliente, False AS Marcar, [TabEndereco].CodEnd INTO TabTemporariaFormControle
    FROM TabBase INNER JOIN TabEndereco ON [TabBase].CodCliente = [TabEndereco].CodCliente
    WHERE ((([TabEndereco].CodCliente)=FunCodCliente()));"

    E como disse, o problema está na concatenação.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  Avelino Sampaio 27/10/2014, 14:10

    Experimente trocar por apóstrofes:

    ...Left([TabBase]!Setor,3) & ' - ' & [TabBase]![Tipo] AS SetorTipo...

    Aguardamos



    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    ilvecchio
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  ilvecchio 27/10/2014, 14:28

    É isso aí Grande!

    Valeu, muito obrigado.


    Conteúdo patrocinado


    [Resolvido]Criar tabela com SQL VBA Empty Re: [Resolvido]Criar tabela com SQL VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 9/12/2024, 03:41