MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

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

    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, 22: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.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

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

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

    Mensagem  FabioPaes em Dom 24 Jan 2016, 23:57

    Tenta assim:

    CurrentDb.Execute "INSERT INTO TABELA (CAMPOSTABELA,CAMPOSTABELA)" & _
    "
    VALUES('" & Me.NOMECAMPO & "','" & NOMECAMPO & "')"

    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, 13: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.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

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

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

    Mensagem  FabioPaes em Seg 25 Jan 2016, 13: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...

    Lupércio
    VIP
    VIP

    Respeito às Regras 100%

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

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

    Mensagem  Lupércio em Dom 31 Jan 2016, 00: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 : 519
    Registrado : 29/08/2012

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

    Mensagem  clebergyn em Dom 31 Jan 2016, 05: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

    Cláudio Más
    Developer
    Developer

    Respeito às Regras 100%

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

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

    Mensagem  Cláudio Más em Dom 31 Jan 2016, 22: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

    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, 00: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 : 519
    Registrado : 29/08/2012

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

    Mensagem  clebergyn em Qua 03 Fev 2016, 00: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 "& _

    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

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

    Mensagem  JPaulo em Qua 03 Fev 2016, 13: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


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

    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, 14:30

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

    Muito bom.

      Data/hora atual: Sex 09 Dez 2016, 07:39