Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
  • Avatar do usuário
Por CAMILOALVES
#64340
Boa Tarde!
Necessito de algumas validações entre datas e horários, sendo assim solicito verificar a possibilidade de atender as solicitações abaixo:
1) Não permitir digitação de data maior na célula "B12" em relação a célula "B13";
2) Só permitir a entrada de dados em formato DATA (XX/XX/XXXX) em “B12” e “B13”;
3) Se B12 e B13 forem datas iguais, não permitir digitar valor de hora maior em B14 em relação a B15;
4) Se em B13 a data for maior que B12, deverá ser permitido digitar um horário menor em B15 em relação a B14, isso deve-se ao fato de um evento passar de um dia para outro;
5)Só permitir a entrada de dados em formato HORA: [h]:mm em “B14” e “B15” .
Desde Já Agradeço
Você não está autorizado a ver ou baixar esse anexo.
Por CAMILOALVES
#64373
Prezado Foxtri - 04 Mai 2021 às 16:46, Bom Dia!
Obrigado por dispor de seu tempo para ajudar-me.
Então...Não funcionou, veja os testes na planilha anexo.
Segue uma breve especificação funcional:
Se “B12” > “B13”
Msg: “Data inicial Não Pode Ser Maior Que Data Final”
Fim-se
Se “B12” = “B13” E “B14”>”B15”
Msg: “Hora inicial Não Pode Ser Maior Que Hora Final”
****Vide CONSIDERAÇÕES FINAIS
Fim-se

****CONSIDERAÇÕES FINAIS: Caso a data final (“B13”) seja maior que a data inicial (“B12”), deverá ser permitido a digitação de um valor menor em hora final (“B15”) em relação a hora inicial (“B14”), Isso deve-se ao fato de um evento passar de um dia para outro, por exemplo, uma preventiva inicia-se em 05/05/21 às 16:00Hs podendo se estender até o dia 06/05/21 às 7:10Hs..
Você não está autorizado a ver ou baixar esse anexo.
Por osvaldomp
#64392
Salve, @CAMILOALVES » 05 Mai 2021 às 10:04


Veja se atende.
Validação de Dados | Personalizado | desmarcar Ignorar em branco:

em B12 ~~~> se B13=0, então permite de hoje até hoje+60 dias; se B13>0, então permite de hoje até B13
=E($B$12>=HOJE();$B$12<=$B$13+((HOJE()+60)*($B$13=0)))

em B13 ~~~> permite a partir de hoje e maior ou igual a B12
=E($B$13>=HOJE();$B$13>=$B$12+HOJE()*($B$12=0))

em B14 ~~~> =$B$12+$B$14<=$B$13+$B$15

em B15 ~~~> =$B$13+$B$15>=$B$12+$B$14
CAMILOALVES agradeceu por isso
Por CAMILOALVES
#64399
Bom Dia Prezado osvaldomp - 05 Mai 2021 às 18:10!
Primeiramente Muito Obrigado Por Dispor de Seu Tempo Para Ajudar-me.
Então...Não Funcionou!
Se Possível, Peço Que Analise.
O que está acontecendo:
1)Na célula “B12” só está aceitando digitação da data atual ou posterior;
2)Na célula “B13” está aceitando digitação de dados com a célula “B12” em branco;
3)Na célula “B14” só está aceitando digitação se houver dados na célula “B15”.
Ressalvas: o objetivo da planilha é controlar manutenção, isso ocorre semanalmente, mensalmente e trimestralmente, portanto não pode haver restrições quanto a lançar datas anteriores a data atual do sistema, a não ser as condições solicitadas.
OBS: Caso Você Julgue Necessário e Se Possível, a Solução Poderá Ser Via Macro.
Segue uma breve especificação funcional:
Format “B12” e “B13” com xx/xx/xxxx
Format “B14” e “B15” com [h]:mm
Se “B12” > “B13”
Msg: “Data inicial Não Pode Ser Maior Que Data Final”
Fim-se

Se “B12” = “B13” E “B14”>”B15”
Msg: “Hora inicial Não Pode Ser Maior Que Hora Final”
****Vide CONSIDERAÇÕES FINAIS
Fim-se

****CONSIDERAÇÕES FINAIS: Caso a data final (“B13”) seja maior que a data inicial (“B12”),
deverá ser permitido a digitação de um valor menor em hora final (“B15”) em relação a hora inicial (“B14”),
Isso deve-se ao fato de um evento passar de um dia para outro, por exemplo, uma preventiva inicia-se em 05/05/21 às 16:00Hs podendo se estender até o dia 06/05/21 às 7:10Hs.

OBS: Reenvio planilha já com vossa solução inicial
Atenciosamente
Você não está autorizado a ver ou baixar esse anexo.
Por osvaldomp
#64405
Caro, @CAMILOALVES , veja se atende, por gentileza.

na VD de B12 ~~~> =E(ÉNÚM($B$12);$B$12<=$B$13+((HOJE()+3^8)*($B$13=0)))

na VD de B13 ~~~> =E(ÉNÚM($B$13);$B$13>=$B$12;$B$12>0)

na VD de B14 ~~~> =OU($B$15=0;$B$12+$B$14<=$B$13+$B$15)

na VD de B15 ~~~> =E($B$14>0;$B$13+$B$15>=$B$12+$B$14)
CAMILOALVES agradeceu por isso
Por CAMILOALVES
#64424
Prezado osvaldomp - 06 Mai 2021 às 18:12, Bom Dia!
Primeiramente Obrigado Pela Força, Dedicação e Paciência, e que DEUS continue lhe dando conhecimento.
My friend, BINGO! era exatamente isso.
Atenciosamente
osvaldomp agradeceu por isso
Por osvaldomp
#64426
#
Salve, @CAMILOALVES .

Que bom que funcionou. Explicando o erro na versão anterior que eu sugeri, foi que eu pensei que se tratava de planejamento (futuro, portanto) então coloquei uma restrição para só aceitar datas a partir do dia atual. :oops:

Deus lhe proteja também. Se cuide.
CAMILOALVES agradeceu por isso

Na figura 1 é a aparência quando abro[…]

Cara, nem sei como agradecer. Showww, resolveu per[…]

repetição entre jogos

Poderia dar alguns exemplo de resultado esperado s[…]

Mudar o mês na fórmula

Anexa um exemplo, por favor.

Não seria só desabilitar a opç[…]

Ajuda Para Calculo com horario.

Bom dia/tarde/noite Pessoal preciso de uma ajuda[…]

Agradeço muito pela dica, mas acredito que […]

Retornar nome do computador na rede

achei a mesma pergunta neste forum , com resposta,[…]