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]Erro em Tempo de Execução "3077"

    avatar
    Antonio Aurélio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 44
    Registrado : 29/01/2014

    [Resolvido]Erro em Tempo de Execução "3077" Empty [Resolvido]Erro em Tempo de Execução "3077"

    Mensagem  Antonio Aurélio 2/3/2018, 17:45

    Senhores, boa tarde.

    Novamente, recorro a ajuda de vocês.
    Para não ferir as regras do fórum, pesquisei bastante, porém, não deparei com dúvidas similares a minha.
    Tenho um campo "DataDoAgendamento", tipo Data/Hora, com a máscara de entrada "99/99/9999/09:99;0;_;;".
    Preciso que, ao inserir uma data para agendamento, receba a mensagem que já existe agendamento para aquela data e hora.
    No Evento "Antes de Atualizar", coloquei o código:

    Private Sub DataDoAgendamento_BeforeUpdate(Cancel As Integer)
    Dim rs As Recordset
    Set rs = Me.RecordsetClone
    rs.FindFirst "DataDoAgendamento = " & DataDoAgendamento
    If Not rs.NoMatch Then
    MsgBox "Agendamento para a Data ' " & DataDoAgendamento.Text & " ' já existe.", vbInformation, "AGENDA"
    Cancel = True
    End If
    Set rs = Nothing
    End Sub

    A mensagem de erro:
    "Erro em tempo de Execução '3077': Erro de Sintaxe (operador faltando) na expressão"
    retorna indicando o erro na linha em destaque.

    Desde já agradeço,

    Muito obrigado.

    Antonio Aurélio
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4145
    Registrado : 29/06/2012

    [Resolvido]Erro em Tempo de Execução "3077" Empty Re: [Resolvido]Erro em Tempo de Execução "3077"

    Mensagem  Noobezinho 2/3/2018, 21:32

    Antonio
    Quando se abre um recordset(), a primeira coisa que se faz é mover para o primeiro registro.
    No VBA, devemos usar o formato de data americano pra obter o resultado.
    Teste:


    Private Sub DataDoAgendamento_BeforeUpdate(Cancel As Integer)
    Dim rs As Recordset
    Set rs = Me.RecordsetClone
    rs.movefirst
    rs.FindFirst "DataDoAgendamento = #" & Format(DataDoAgendamento,"m-d-yy") & "#"
    If Not rs.NoMatch Then
      MsgBox "Agendamento para a Data ' " & DataDoAgendamento.Text & " ' já existe.", vbInformation, "AGENDA"
      Cancel = True
    End If
    Set rs = Nothing
    End Sub

    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    Antonio Aurélio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 44
    Registrado : 29/01/2014

    [Resolvido]Erro em Tempo de Execução "3077" Empty Erro em Tempo de Execução "3077"

    Mensagem  Antonio Aurélio 5/3/2018, 10:54


    Senhores, bom dia.

    (Noobezinho, bom dia)

    Muito obrigado pela ajuda.

    Após as alterações, estou recebendo a seguinte mensagem:

    "Erro em tempo de Execução 3077: Erro de sintaxe na data na Expressão."

    Private Sub DataDoAgendamento_BeforeUpdate(Cancel As Integer)
    Dim rs As Recordset
    Set rs = Me.RecordsetClone
    rs.MoveFirst
    rs.FindFirst "DataDoAgendamento = #" & Format(DataDoAgendamento, "m-d-yy hh;nn;ss") & "#"
    If Not rs.NoMatch Then
    MsgBox "Agendamento para a Data ' " & DataDoAgendamento.Text & " ' já existe.", vbInformation, "AGENDA"
    Cancel = True
    End If
    Set rs = Nothing
    End Sub

    Acrescentei horas, minutos e segundos, pois, para a data tenho vários horarios.

    Muito obrigado pelo auxilío.

    Abraços,

    Antonio Aurélio
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4145
    Registrado : 29/06/2012

    [Resolvido]Erro em Tempo de Execução "3077" Empty Re: [Resolvido]Erro em Tempo de Execução "3077"

    Mensagem  Noobezinho 5/3/2018, 11:12

    Bom dia, Antonio

    Experimente:

    rs.FindFirst "DataDoAgendamento = #" & Format(DataDoAgendamento, "m-d-yy hh : mm : ss") & "#"

    Veja que o formato é hora : minutos : segundos

    Seperador de horas, minutos e segundos é dois pontos ( : )

    Separei os dois pontos na frase, porque aparece ícones ao invés das letras


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    Antonio Aurélio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 44
    Registrado : 29/01/2014

    [Resolvido]Erro em Tempo de Execução "3077" Empty Erro em Tempo de Execução "3077"

    Mensagem  Antonio Aurélio 6/3/2018, 12:41

    Senhores, bom dia.

    Muito obrigado pelas orientações.
    As informações foram precisas. Já não é possível geral agendamento para a mesma data e hora.
    O que me passaram ontem à tarde, é que na mesma data e hora TEM que ter a possibilidade de
    agendar para profissionais diferentes.
    Exemplo:
    Data 15/03/2018 10:00 - Agendamento para o Usuário 01 com o profissional 03
    na mesma data: 15/03/2018 10:00 - Agendamento para o Usuário 02 com o Profissional 01
    Peço desculpas por não ter postado esta dúvida ao abrir o tópico, mas, as informações não
    chegam com a necessidade que gostaríamos.
    Peço, novamente e por favor, seu auxilio.
    Muito obrigado.

    Antonio Aurélio
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4145
    Registrado : 29/06/2012

    [Resolvido]Erro em Tempo de Execução "3077" Empty Re: [Resolvido]Erro em Tempo de Execução "3077"

    Mensagem  Noobezinho 6/3/2018, 12:54

    Antonio

    Para mantermos o fórum em ordem, solicito que feche esse tópico

    e abra outro com a nova dúvida.

    [ ]'s



    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    Antonio Aurélio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 44
    Registrado : 29/01/2014

    [Resolvido]Erro em Tempo de Execução "3077" Empty Erro em Tempo de Execução "3077"

    Mensagem  Antonio Aurélio 6/3/2018, 13:06

    Ok!

    Peço desculpas.
    Evitar agendamento em duplicidade resolvido.
    Obrigado.

      Data/hora atual: 26/1/2022, 23:55