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]Preenchimento de campo com uma condição

    Compartilhe

    moacirfj
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 51
    Registrado : 23/12/2013

    [Resolvido]Preenchimento de campo com uma condição

    Mensagem  moacirfj em Seg 07 Abr 2014, 19:25

    Srs,

    Necessito de uma ajuda.

    Tenho uma tabela que contém um campo chamado horas e outro chamado turno.
    No formulário, tenho a necessidade de que o campo turno seja preenchido automático conforme a condição abaixo:

    Se o horário for entre 05:40 e 14:00, preencher com 1º Turno
    Se o horário for entre 14:00 e 22:40, preencher com 2º Turno
    Se o horário for entre 22:20 e 05:40, preenhcer com 3º Turno

    Por ser três condições não pude utilizar a função SeIsMed(), pensei em utilizar VBA com a rotina CASE mas não soube como desenvolver.

    Fico no aguardo.

    Att.

    Moacir

    clynton
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 307
    Registrado : 08/07/2013

    Re: [Resolvido]Preenchimento de campo com uma condição

    Mensagem  clynton em Ter 08 Abr 2014, 02:43

    moacirfj

    Na Tabela, coloque o 'Tipo de Dados' do Campo 'Horas' como: 'Data/Hora.

    No Formulário coloque no evento 'Após atualizar' do campo 'Horas':

    If Me.Horas.Value >= "05:40:00" And Me.Horas.Value < "13:59:59" Then
    Me.Turno.Value = "1º Turno"
    End If

    If Me.Horas.Value >= "14:00:00" And Me.Horas.Value < "22:19:59" Then
    Me.Turno.Value = "2º Turno"
    End If

    If Me.Horas.Value >= "22:20:00" And Me.Horas.Value < "23:59:59" Then
    Me.Turno.Value = "3º Turno"
    End If

    If Me.Horas.Value >= "00:00:00" And Me.Horas.Value < "05:39:59" Then
    Me.Turno.Value = "3º Turno"
    End If

    Se não der certo só avisar que verificaremos.

    Avelino Sampaio
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3348
    Registrado : 04/04/2010

    Re: [Resolvido]Preenchimento de campo com uma condição

    Mensagem  Avelino Sampaio em Ter 08 Abr 2014, 08:18

    Olá!

    Veja mais uma forma de escrita:

    Private Sub HoraInicio_AfterUpdate()
    Dim Turno(4)
    Turno(1) = Eval("#" & Me!HoraInicio & "# between #05:40:00# and #13:59:59#")
    Turno(2) = Eval("#" & Me!HoraInicio & "# between #14:00:00# and #22:19:59#")
    Turno(3) = Eval("#" & Me!HoraInicio & "# between #22:20:00# and #23:59:59#")
    Turno(4) = Eval("#" & Me!HoraInicio & "# between #00:00:00# and #05:39:59#")
    Me!Turno = Switch(Turno(1), "1º Turno", Turno(2), "2º Turno", Turno(3), "3º Turno", Turno(4), "3º Turno")
    End Sub


    Bom estudo!


    .................................................................................
    ============ Quer aprender Access em alta velocidade ? ============

    || [Você precisa estar registrado e conectado para ver esta imagem.] Acesse o site UsandoAccess.com.br e veja um ótimo kit de ensino que tenho para você.

    ===========================================================

    mathusalmeida
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 263
    Registrado : 30/08/2011

    Re: [Resolvido]Preenchimento de campo com uma condição

    Mensagem  mathusalmeida em Ter 08 Abr 2014, 11:18

    Parabéns ao clynton e ao avelino sampaio.

    Como é bom vermos as várias possibilidades de atendermos nossas necessidades.

    Sucesso a todos.

    moacirfj
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 51
    Registrado : 23/12/2013

    Re: [Resolvido]Preenchimento de campo com uma condição

    Mensagem  moacirfj em Ter 08 Abr 2014, 11:57

    Amigos,

    Os códigos apresentados resultaram em sucesso.
    Agradeço a todos pela imensa ajuda e desejo sucesso e muita PAZ.

    Att.

    Moacir

      Data/hora atual: Seg 05 Dez 2016, 16:30