MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Compartilhe
    avatar
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 124
    Registrado : 15/12/2015

    [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  iberlucio em Dom 24 Jan 2016, 20:15

    Ola povo,
    qdo desenvolvo meus sistemas, tenho o costume de identar tudo,
    e não estou conseguindo fazer isso com o comando " CurrentDb.Execute", como mostrado abaixo.


    CurrentDb.Execute

        "INSERT INTO [c:\sistema\sisoe\BDTESTE.accdb].[ESPECIALISTA] _
                     ( [ESPECIALISTA].COD_ESPEC, [ESPECIALISTA].UAMA_ESPEC, [ESPECIALISTA].NOME_ESPEC3) _

         SELECT [ESPECIALISTA].COD_ESPEC, [ESPECIALISTA].UAMA_ESPEC, [ESPECIALISTA].NOME_ESPEC, _
           FROM [ESPECIALISTA] _
          WHERE  COD_ESPEC = 12;", dbFailOnError


    Voces vão concordar que todo o comando em uma linha, fica ruim de analisar.

    Qual o comando de fim de linha para aceitar a quebra?

    Obrigado pela ajuda.
    avatar
    FabioPaes
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  FabioPaes em Dom 24 Jan 2016, 21:57

    Tenta assim:

    CurrentDb.Execute "INSERT INTO TABELA (CAMPOSTABELA,CAMPOSTABELA)" & _
    "
    VALUES('" & Me.NOMECAMPO & "','" & NOMECAMPO & "')"
    avatar
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 124
    Registrado : 15/12/2015

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  iberlucio em Seg 25 Jan 2016, 11:14

    Ainda não foi dessa vez Fábio, continuou dando erro:


    Erro de compilação

    Era esperado: numero de linha ou rótulo ou instrução ou fim da instrução.
    avatar
    FabioPaes
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  FabioPaes em Seg 25 Jan 2016, 11:19

    Então tem erro na Instrução... pois aqui funciona cetim, esse código aee que passei, veja que fecha a " & _ " e tem espaços entre eles...
    avatar
    Lupércio
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1134
    Registrado : 06/05/2011

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  Lupércio em Sab 30 Jan 2016, 22:15

    Tente assim:

    CurrentDb.Execute "INSERT INTO SuaTabela (CampoTabela,CampoTabela) " _
    & " Values(""" & Me.Campo1 """, """ & Me.Campo2 & """)"



    .................................................................................
    Quando tua dúvida for resolvida, de o retorno de agradecimento á aqueles que gastaram seu tempo para te ajudar.
    Clique no botão “Resolvido” logo acima do botão “Enviar” ao lado direito. Todos nós agradecemos.[Você precisa estar registrado e conectado para ver esta imagem.][Você precisa estar registrado e conectado para ver esta imagem.]

    clebergyn
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 650
    Registrado : 29/08/2012

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  clebergyn em Dom 31 Jan 2016, 03:55

    tente assim

    Código:

    CurrentDb.Execute  "INSERT INTO [c:\sistema\sisoe\BDTESTE.accdb].[ESPECIALISTA] "& _
    " ( [ESPECIALISTA].COD_ESPEC, [ESPECIALISTA].UAMA_ESPEC, [ESPECIALISTA].NOME_ESPEC3) "& _
    "SELECT [ESPECIALISTA].COD_ESPEC, [ESPECIALISTA].UAMA_ESPEC, [ESPECIALISTA].NOME_ESPEC, "& _
    "FROM [ESPECIALISTA]   WHERE  COD_ESPEC = 12;", dbFailOnError

    se não der certo assim é porque tem outros erros no codigo, como campos dentre outros
    avatar
    Cláudio Más
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1154
    Registrado : 21/01/2012

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  Cláudio Más em Dom 31 Jan 2016, 20:12

    Melhor mesmo é usar uma variável do tipo string:

    Código:
    Dim strSQL As String

    strSQL = "INSERT INTO [c:\sistema\sisoe\BDTESTE.accdb].[ESPECIALISTA] ..."
    CurrentDb.Execute strSQL
    avatar
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 124
    Registrado : 15/12/2015

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  iberlucio em Ter 02 Fev 2016, 22:23

    Valeu Povo,
    Resolvido conforme tua orientação do clebergyn...

    clebergyn
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 650
    Registrado : 29/08/2012

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  clebergyn em Ter 02 Fev 2016, 22:28

    só para complementar, quando usamos quebra de linha "& _" em um sql muitas vezes esquecemos de deixar espaços (ao menos um) entre um
    comando e outro

    tipo: "...FROM"& _
    "nome_tabela"    
    desse jeito acima não aceita pois o From está pregado no "nome_tabela"
    sendo o certo, colocar o espaço
    assim: "...FROM "& _
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  JPaulo em Qua 03 Fev 2016, 11:09

    Para aprendizado, repare que a dica do Cláudio também se utiliza muito;

    Código:
    Dim strSQL As String

    strSQL = "INSERT INTO [D:\UAMAGUARA\BDGUARA.accdb;].GERENTE"
    strSQL = strSQL & " SELECT ESPECIALISTA.COD_ESPEC, ESPECIALISTA.UAMA_ESPEC,ESPECIALISTA.NOME_ESPEC"
    strSQL = strSQL & " FROM ESPECIALISTA"
    strSQL = strSQL & " WHERE COD_ESPEC = 12"
    CurrentDb.Execute strSQL

    Desta forma, tem a quebra em todas as instruções para melhor entendimento do trecho.

    INSERT
    SELECT
    FROM
    WHERE


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 124
    Registrado : 15/12/2015

    Re: [Resolvido]Comando currentdb.execute nao aceita quebra de linha

    Mensagem  iberlucio em Qua 03 Fev 2016, 12:30

    Ok JP,
    Agora entendi o que o Claudio quiz dizer..

    Muito bom.

      Data/hora atual: Seg 25 Set 2017, 19:21