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]Operador em falta

    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 17:26

    Boas tardes,

    tenho um formulario em que no campo data_do_serviço ao perder foco quero verificar se um elemento tem troca de serviço para o dia que tento selecionar.
    dá-me erro 3075: operador em falta.
    alguem pode ajudar?

    Set db = CurrentDb
    strSql = "SELECT * FROM Tabela1 WHERE Nº quem é o serviço= " & Me.Quemserviço & " And Data do serviço= " & Me.Data_do_serviço
    Set rs = db.OpenRecordset(strSql)
    If rs.RecordCount = 1 Then
    resposta = MsgBox("O elemento de vigilância Nº " & Me.Quemserviço & " já tem troca para este dia", vbOKOnly + vbInformation, "IMPOSSIVEL ADICIONAR")

    Me.Undo
    Me.Data_do_serviço.SetFocus
    End If


    obrigado


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 17:39

    Ola, atenção aos campos com espaços, coloque entre parênteses rectos.
    Exemplo:
    [Nº quem é o serviço]
    Abbraço
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 17:44

    Pois, isso já tentei antes e assim não dá erro nenhum no caso de ja existir um.


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 17:52

    Efetue um teste com a data 02-02-2015, crie um registo com essa data.
    Fico aguardar
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 17:55

    Não dá erro nenhum.
    portanto a tabela é a Tabela1 e os campos são:
    Nº Quem é o serviço, Data do serviço


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 17:58

    Sim, mas testou com a data que postei de forma a ter pelo menos um registo.
    É que a data na consulta sql deve-se formatar para mm/dd/yyyy
    Mes/dia/ano
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 18:04

    assim :
    strSql = "SELECT * FROM Tabela1 WHERE Nº quem é o serviço= " & Me.Quemserviço & " And format$([Data do serviço], "mm/dd/yyyy")= " & Me.Data_do_serviço


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 18:16

    Estou nobtelemovel e não e fácil
    strSql = "SELECT * FROM Tabela1 WHERE [Nº quem é o serviço]= " & Me.Quemserviço & " And [Data do serviço]= # " & format(Me.Data_do_serviço, "mm/dd/yyyy") &"#"
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 18:17

    Testou com 2-2-2015 e qual foi o resulatfo?
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 18:19

    nado deu nada


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 3/2/2015, 18:22

    Ola, tente postar base de dados com for e tabela em questão para se testar.
    Mais logo dou uma vista de olhos ou outro utilizador talvez possa ajudar.
    Abraço
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 18:23

    ok, hoje a não tenho tempo.
    verifico amanhã.
    Obrigado na mesma.
    Abraço


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 3/2/2015, 18:29

    Dim Datarefer As Date
    Set db = CurrentDb ' seta o banco de dados atual
    Set rs = db.OpenRecordset("Tabela1") 'acesso a tabela ou consulta
    Datarefer = Format([Data do serviço], "dd/mm/yyyy")

    sql = "select * from Tabela1 WHERE [Nº quem é o serviço]=" & Me.Quemserviço & " and [Data do serviço] = #" & Datarefer & "# "
    Set rs = db.OpenRecordset(sql)

    If rs.RecordCount > 0 Then



    resposta = MsgBox("O elemento de vigilância Nº " & Me.Quemserviço & " já tem troca para este dia", vbOKOnly + vbInformation, "IMPOSSIVEL ADICIONAR")

    Me.Undo
    Me.Data_do_serviço.SetFocus
    End If

    A bombar, mas obrigado por tudo na mesma


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 4/2/2015, 08:20

    Olá, obrigado pelo retorno.
    Abraço
    ÓscarSantos
    ÓscarSantos
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 335
    Registrado : 18/09/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  ÓscarSantos 4/2/2015, 08:56

    Uma pequena correção para todos que venham tirar duvidas e não sejam indusidos em erro:
    Anteriormente estava Datarefer = Format([Data do serviço],"dd/mm/yyyy") , mas deve ser como está em baixo para bombar:


    Dim Datarefer As Date
    Set db = CurrentDb ' seta o banco de dados atual
    Set rs = db.OpenRecordset("Tabela1") 'acesso a tabela ou consulta
    Datarefer = Format([Data do serviço], "mm/dd/yyyy") ' Anteriormente estava dd/mm/yyyy enão funcionava bem.

    sql = "select * from Tabela1 WHERE [Nº quem é o serviço]=" & Me.Quemserviço & " and [Data do serviço] = #" & Datarefer & "# "
    Set rs = db.OpenRecordset(sql)

    If rs.RecordCount > 0 Then



    resposta = MsgBox("O elemento de vigilância Nº " & Me.Quemserviço & " já tem troca para este dia", vbOKOnly + vbInformation, "IMPOSSIVEL ADICIONAR")

    Me.Undo
    Me.Data_do_serviço.SetFocus
    End If


    .................................................................................
    _________________________________________________________
    sempre a aprender
    para enviar ou postar só access2007 infelizmente é o que tenho no trabalho Sad .
    para dar tópico como resolvido https://www.maximoaccess.com/t860-resolucao-de-topicos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Alvaro Teixeira 4/2/2015, 10:47

    Olá, obrigado pela informação, aproveito para deixar um link de uma função bastante util para converter a data quando utilizado em instruções sql:
    Código:
    Function SQLDate(varDate As Variant) As String
        'Purpose:    Return a delimited string in the date format used natively by JET SQL.
        'Argument:  A date/time value.
        'Note:      Returns just the date format if the argument has no time component,
        '                or a date/time format if it does.
        'Author:    Allen Browne. allen@allenbrowne.com, June 2006.
        If IsDate(varDate) Then
            If DateValue(varDate) = varDate Then
                SQLDate = Format$(varDate, "\#mm\/dd\/yyyy\#")
            Else
                SQLDate = Format$(varDate, "\#mm\/dd\/yyyy hh\:nn\:ss\#")
            End If
        End If
    End Function
    origem: http://allenbrowne.com/ser-36.html
    Abraço

    Conteúdo patrocinado


    [Resolvido]Operador em falta Empty Re: [Resolvido]Operador em falta

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 20:42