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]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Compartilhe
    avatar
    darlansandro
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  darlansandro em Qui 18 Maio 2017, 20:26

    Olá gente,

    Encontrei um problema o qual não tenho encontrado uma solução. Trata-se de um "Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando) na expressão da consulta...". No primeiro momento pensei que fosse a questão das aspas duplas. Alterei todo código mas não resolveu o problema. Abaixo consta um vídeo demonstrando o erro e o banco para análise a todo aquele que puder me ajudar. Agradeço desde já.

    Código:

    Private Sub txtContratosNivel3_AfterUpdate()
    Me.txtTextoNivel3 = Me.txtContratosNivel3.Column(2)
    Me.txtTextoNivel3.Requery
    CarregaTextoNivel3
    End Sub

    Public Sub CarregaTextoNivel3()
    On Error GoTo trata_erro
    Dim DB          As DAO.Database
    Dim rsT         As DAO.Recordset
    Dim msql        As String

        Set DB = CurrentDb
        
        msql = "SELECT textoNivel3"
        msql = msql & " FROM tblContratosNivel3"
        msql = msql & " WHERE textoNivel3=" & txtTextoNivel3 & ""
        Set rsT = DB.OpenRecordset(msql, dbOpenSnapshot)
        
        If Not rsT.EOF Then
            txtTextoNivel3.Value = rsT("textoNivel3").Value
        Else
            txtTextoNivel3.Value = Empty
        End If
        
        rsT.Close
        Set rsT = Nothing

        Exit Sub
        
    trata_erro:
        MsgBox "Erro gerado: " & Err.Number & " - " & Err.Description & "", vbCritical, "Erro!!!"
        Exit Sub


    End Sub





    Grato
    Anexos
    Gestor.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (2.7 Mb) Baixado 5 vez(es)
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  JPaulo em Sex 19 Maio 2017, 11:34

    Ola;

    É as aspas simples que falta, porque é Texto

    Outras alterações;
    De;
    txtTextoNivel3.Value = Empty
    Para;
    txtTextoNivel3.Value = Null

    De;
    txtTextoNivel3.Value = rsT("textoNivel3").Value
    Para;
    txtTextoNivel3.Value = rsT("textoNivel3")

    E veja como funfa beleza;

    Código:
    Public Sub CarregaTextoNivel3()
    On Error GoTo trata_erro
    Dim DB          As DAO.Database
    Dim rsT        As DAO.Recordset
    Dim msql        As String

        Set DB = CurrentDb
       
        msql = "SELECT textoNivel3"
        msql = msql & " FROM tblContratosNivel3"
        msql = msql & " WHERE textoNivel3='" & txtTextoNivel3 & "'"
        Set rsT = DB.OpenRecordset(msql, dbOpenSnapshot)
       
        If Not rsT.EOF Then
            txtTextoNivel3.Value = rsT("textoNivel3")
        Else
            txtTextoNivel3.Value = Null
        End If
       
        rsT.Close
        Set rsT = Nothing

        Exit Sub
       
    trata_erro:
        MsgBox "Erro gerado: " & Err.Number & " - " & Err.Description & "", vbCritical, "Erro!!!"
        Exit Sub
    End Sub


    .................................................................................
    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
    darlansandro
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  darlansandro em Sab 20 Maio 2017, 14:38

    Obrigado JPaulo. Apliquei a orientação, entretanto não funcionou. No momento em que uso a aspas simples a mensagem de erro não é exibida, contudo a informação não é carregada na caixa de texto do formulário. Abaixo estou demonstrando o que aconteceu depois da mudança. Já quebrei a cabeça com algo que incialmente pensei ser de simples solução.Grato pela ajuda.






    Código:


    Private Sub txtContratosNivel3_AfterUpdate()
    Me.txtTextoNivel3 = Me.txtContratosNivel3.Column(2)
    Me.txtTextoNivel3.Requery
    CarregaTextoNivel3
    End Sub

    Public Sub CarregaTextoNivel3()
    On Error GoTo trata_erro
    Dim DB          As DAO.Database
    Dim rsT         As DAO.Recordset
    Dim msql        As String

        Set DB = CurrentDb
        
        msql = "SELECT textoNivel3"
        msql = msql & " FROM tblContratosNivel3"
        msql = msql & " WHERE textoNivel3='" & txtTextoNivel3 & "'"
        Set rsT = DB.OpenRecordset(msql, dbOpenSnapshot)
        
        If Not rsT.EOF Then
            txtTextoNivel3.Value = rsT("textoNivel3")
        Else
            txtTextoNivel3.Value = Null
        End If
        
        rsT.Close
        Set rsT = Nothing

        Exit Sub
        
    trata_erro:
        MsgBox "Erro gerado: " & Err.Number & " - " & Err.Description & "", vbCritical, "Erro!!!"
        Exit Sub


    End Sub

    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  JPaulo em Sab 20 Maio 2017, 19:49

    Então não use as aspas simples.

    Antes da instrução If Not rsT.EOF Then, insira

    On Error Resume Next



    .................................................................................
    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
    darlansandro
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  darlansandro em Dom 21 Maio 2017, 21:21

    Olá Paulo,

    Quebrei a cabeça, mas consegui identificar o erro. Ele estava na condição da igualdade "where". Abaixo estou postando o código que solucionou o problema. Grato pela gentileza e ajuda para encontrar a solução.

    Código:


    Private Sub txtContratosNivel3_Change()
    Me.txtTextoNivel3 = Me.txtContratosNivel3.Column(2)
    'Me.txtTextoNivel3.Requery
    CarregaTextoNivel3

    End Sub

    Public Sub CarregaTextoNivel3()

    On Error GoTo trata_erro
    Dim db          As DAO.Database
    Dim rsT         As DAO.Recordset
    Dim msql        As String

        Set db = CurrentDb
        
        msql = "SELECT idNivel3, textoNivel3, idNivel2"
        msql = msql & " FROM tblContratosNivel3"
        'msql = msql & " WHERE textoNivel3 =" & Me.txtContratosNivel3.Column(2) & ""
        msql = msql & " WHERE idNivel3 = " & txtContratosNivel3 & ""
        'msql = msql & " WHERE textoNivel3 ='" & txtContratosNivel3.Column(2) & "'"
        'msql = msql & " WHERE textoNivel3='" & txtTextoNivel3 & "'"
        Set rsT = db.OpenRecordset(msql, dbOpenSnapshot)
        
        If Not rsT.EOF Then
            txtTextoNivel3.Value = rsT("textoNivel3")
        Else
            txtTextoNivel3.Value = Null
        End If
        
        rsT.Close
        Set rsT = Nothing

        Exit Sub
        
    trata_erro:
        MsgBox "Erro gerado: " & Err.Number & " - " & Err.Description & "", vbCritical, "Erro!!!"
        Exit Sub


    End Sub


    avatar
    darlansandro
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 138
    Registrado : 03/05/2014

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  darlansandro em Dom 21 Maio 2017, 21:25

    Problema Resolvido!
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Erro Gerado: 3075 - Erro de Sintaxe (Operador Faltando)

    Mensagem  JPaulo em Seg 22 Maio 2017, 14:19

    Fico feliz.

    Obrigado pelo retorno o forum agradece.


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

      Data/hora atual: Seg 25 Set 2017, 10:35