Notifications
Clear all

Turno automático

14 Posts
4 Usuários
0 Reactions
2,170 Visualizações
(@gabrba)
Posts: 33
Trusted Member
Topic starter
 

Olá!

Gostaria de uma fórmula com a seguinte condição:
Se o horário no momento for entre 00:00 às 07:59, o resultado é letra A, se o horário no momento for dentre 08:00 às 15:59, o resultado é letra B e se o horário no momento for entre 16:00 às 23:59, o resultado é letra C.

Fico no aguardo, se estiver um pouco confuso, estou à disposição para explicar novamente.

Valeu.

Gab

 
Postado : 05/01/2017 10:47 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde gabrba,

Supondo que esse horário esteja na célula A1, utilize essa fórmula:

=CARACT(CORRESP(A1;{0;0,33333;0,66667};1)+64)

Qualquer coisa da o grito.
Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 05/01/2017 10:56 am
(@gabrba)
Posts: 33
Trusted Member
Topic starter
 

Olá Bernardo,

Primeiramente muito obrigado pelo código.
Se puder, poderia me explicar sobre cada número?

Agradecido e abç

Gab

 
Postado : 05/01/2017 11:08 am
(@gabrba)
Posts: 33
Trusted Member
Topic starter
 

Olá Bernardo,

Primeiramente muito obrigado pelo código.
Se puder, poderia me explicar sobre cada número?

Agradecido e abç

Gab

OBS: o =char(64) já sei que direciona para uma determinada letra, apenas gostaria de saber sobre os números entre chaves.

 
Postado : 05/01/2017 11:15 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde gabrba,

A título de exemplo, utilize essas fórmulas:
=texto(0;"hh:mm")
=texto(0,33333;"hh:mm")
=texto(0,66667;"hh:mm")

Verá que são os horários. O Excel entende esses números e exibe os valores no formato hora.
É como um índice(corresp()) ou procv...
Como quis os valores sequenciais como A, B e C, já coloquei no caract(), se fosse X, Y e Z, por exemplo, eu colocaria assim:

=ÍNDICE({"X";"Y";"Z"};CORRESP(A1;{0;0,33333;0,66667};1))

Isso para não ter que fazer muita utilização de SE()'s... Mas tem várias outras maneiras...

Qualquer coisa da o grito.
Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 05/01/2017 11:23 am
(@gabrba)
Posts: 33
Trusted Member
Topic starter
 

Agora sim entendi!!
No A1 coloquei uma fórmula =now() , agora às 14:30 está marcando com a letra C porém o certo é a letra B, porém quando digito este horário manualmente fica certinho...

 
Postado : 05/01/2017 11:33 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

o now() retorna data também, então vai ser muita hora....Tem que fazer assim:

=CARACT(CORRESP(A1-int(A1);{0;0,33333;0,66667};1)+64)

Qualquer coisa da o grito.
Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 05/01/2017 11:38 am
(@gabrba)
Posts: 33
Trusted Member
Topic starter
 

Obrigadão!!

 
Postado : 05/01/2017 11:43 am
(@tiagogn)
Posts: 61
Trusted Member
 

Bernardo,

Boa tarde.

Aproveitando o tópico do usuário ... Poderia me auxiliar em conseguir obter o resultado de turnos também?

Tenho uma planilha que em uma coluna tem a data e hora e em cima disso quero colocar numa coluna o turno correspondente.

Premissas:

Turno 1: 07:00 às 15:00
Turno 2: 15:00 às 23:00
Turno 3: 23:00 às 07:00

Tentei mas não consegui obter êxito com essas fórmulas que você passou.

Segue no anexo uma planilha básica.

Pode me auxiliar por favor?

Agradeço desde já.

Abs.

Atenciosamente,

Tiago Gonçalves

 
Postado : 05/01/2017 1:11 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde tiagogn,

O seu já precisa do índice(). Tenta assim:

=ÍNDICE({3;1;2};CORRESP((E5+0,04167)-INT(E5+0,04167);{0;0,33333;0,625};1))&"º"

Qualquer coisa da o grito.
Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 05/01/2017 1:27 pm
(@tiagogn)
Posts: 61
Trusted Member
 

Bernardo,

Muito obrigado pelo retorno!!!

Olha... Funcionou QUASE TODOS OS HORÁRIOS!!!

INCRIVELMENTE entre 14:00 e 15:00 ele colocou como 2º onde deveria ser 1º

Tem ideia do porque? rss

Fico no seu aguardo e agradeço desde já.

Atenciosamente,

Tiago Gonçalves

 
Postado : 05/01/2017 1:38 pm
(@tiagogn)
Posts: 61
Trusted Member
 

Bernardo,

Bom dia.

Você tem ideia do porque de acontecer isso?

Agradeço desde já.

Obrigado.

Atenciosamente,

Tiago Gonçalves

 
Postado : 12/01/2017 8:34 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

A correção da excelente solução do Bernardo é:

=ÍNDICE({3;1;2};CORRESP((E13+0,04167)-INT(E13+0,04167);{0;0,33333;0,66667};1))&"º"

Com o +0,04167 ele adiantou o horário na fórmula em uma hora, mas ficou faltando corrigir o último em relação a fórmula do inicial do tópico.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 13/01/2017 2:40 am
(@tiagogn)
Posts: 61
Trusted Member
 

DJunqueira e Bernardo...

Bom dia.

Muito obrigado pela excelente solução que vocês encontraram para esse problema. Resolvido!!!

Muito obrigado novamente!

Atenciosamente,

Tiago Gonçalves

 
Postado : 13/01/2017 5:20 am