Notifications
Clear all

Verificar formato da célula

7 Posts
4 Usuários
0 Reactions
1,895 Visualizações
(@augustoc)
Posts: 12
Active Member
Topic starter
 

Boa tarde a todos.
Preciso de uma ajudinha.
Preciso de uma função que identifique se o valor da célula é uma data.
Se for, retorna vazio, se não, retorna o valor da própria célula.
Segue exemplo anexo.

 
Postado : 30/08/2017 12:32 pm
carlosrgs
(@carlosrgs)
Posts: 631
Prominent Member
 

Essa foi boa, ta ai um desafio.
Com fórmulas acredito não ser possível, mas com V.B.A. é outros 500.

_______________________________________________________________________________________________
Carlos Santos
* Marque o tópico como Resolvido se foi solucionado seu problema.

 
Postado : 30/08/2017 1:46 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde Augusto

Com fórmula eu desconheço, mas segue planilha com um função criada por VBA, chamada de UDF (Função Definida pelo Usuário)

Confira na planilha.

Se foi útil, clique na mãozinha.

[]s

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

 
Postado : 30/08/2017 3:37 pm
Syrax
(@syrax)
Posts: 160
Estimable Member
 

AugustoC,

Veja se isso te ajuda,

o campo "data", pode receber um número com 5 dígitos? Se não

=SE(NÚM.CARACT(C2) = 5;"";C2)

mesmo que esteja uma data na coluna, a fórmula reconhece ela como formato texto, sabendo que as datas tem 5 dígitos (01/01/1928 até 01/01/2173)

caso esse campo "data" receba mais de 5 dígitos

=SE(ANO(TEXTO(C2;"dd/mm/aaaa")) >= 2017;"";C2)

a fórmula reconhece o ano maior ou igual a 2017, mesmo alguém digitando "2017" retornaria 2017 e não um campo vazio, pois ele transforma qualquer valor digitado em data

Se essa resposta te ajudou e resolveu o seu problema, clique no "joinha" ao lado de citar, e não esqueça de colocar o tópico como resolvido, clicando no ✓

 
Postado : 30/08/2017 5:47 pm
(@augustoc)
Posts: 12
Active Member
Topic starter
 

Syrax, ambas funcionaram perfeitamente. Muito obrigado.

 
Postado : 31/08/2017 6:42 am
carlosrgs
(@carlosrgs)
Posts: 631
Prominent Member
 

Bom dia.

Claro que cada um utiliza a maneira que lhe convém, mas ressaltando.
As fórmulas não são confiáveis, se você digitar 60.000,00 em alguma célula o "valor" será >= 2017, pois o Excel entende que 60.000,00 é igual a 08/04/2064.

_______________________________________________________________________________________________
Carlos Santos
* Marque o tópico como Resolvido se foi solucionado seu problema.

 
Postado : 31/08/2017 6:55 am
Syrax
(@syrax)
Posts: 160
Estimable Member
 

Bom dia.

Claro que cada um utiliza a maneira que lhe convém, mas ressaltando.
As fórmulas não são confiáveis, se você digitar 60.000,00 em alguma célula o "valor" será >= 2017, pois o Excel entende que 60.000,00 é igual a 08/04/2064.

Nesse caso, você pode usar a fórmula

=SE(ESQUERDA(CÉL("formato";C2)) = "D";"";C2)

a fórmula acima, reconhece o formato da célula, se você digitar um número qualquer, ele retorna G de Geral, se você digitar uma data, retorna D de data
Não é necessário escrever uma fórmula complexa para isso, mesmo sabendo que usando VBA existe um jeito mais fácil, eu já imaginei que alguém contestaria a fórmula, esperando uma "solução" mais adequada sem ser o VBA

Mas estamos no fórum de fórmulas, e nem todos sabem VBA, a fórmula tem que se adequar para o que você vai usar, e não os outros... até mesmo porque sabemos que seria impossível atender "60 mil" distribuidores em um dia só, conforme está na planilha dele

Se essa resposta te ajudou e resolveu o seu problema, clique no "joinha" ao lado de citar, e não esqueça de colocar o tópico como resolvido, clicando no ✓

 
Postado : 31/08/2017 8:37 am