Excel: Verifique se a data tem um dia

0

Eu tenho células com datas no Excel. Algumas datas têm dd-mm-aa (por exemplo, 20-01-15), outras têm apenas mm-aa (por exemplo, 01-15). Quero determinar quais células têm um dia especificado pelo usuário.

Até onde eu sei, isso não é possível - quando o usuário não digita um dia do mês, o objeto de data subjacente do Excel armazena o primeiro dia do mês. No entanto, o dia não é mostrado na célula, então deve haver um sinalizador ou configuração em algum lugar para isso.

Se eu pudesse extrair o texto da célula exibido, eu poderia analisar isso para responder à minha pergunta, mas não consigo encontrar uma função de planilha para extrair o texto da célula exibido sem usar o VBA.

    
por aaronsnoswell 30.07.2015 / 06:13

3 respostas

2

Se o usuário inserir uma data, ele poderá ocultar o dia, o mês ou o ano formatando. Mas isso é apenas como a célula é exibida . Se, no entanto, você procurar na Barra de Fórmulas ; o dia será visível.

Seoseuúnicointeresseédeterminarqualdosdoisformatosousuárioselecionou,(enãoodiarealdomês),useo = Função de planilha Cell () .

    
por 30.07.2015 / 12:54
0

Você pode impedir que o Excel insira automaticamente o primeiro dia do mês formatando a célula como Texto. Isso precisa ser feito antes da entrada dos dados.

    
por 30.07.2015 / 18:06
0

Sua pergunta é um pouco ambígua. Vou abordar o que acho que você está perguntando.

O que é armazenado

Se você inserir algo que o Excel interpreta como uma data, ele o armazena como uma data, em vez da cadeia de caracteres real que foi inserida. Uma data é armazenada como um número que representa o número de dias desde uma data de referência. Portanto, o valor armazenado é, na verdade, uma contagem de dias, não contém ou não contém um dia, dependendo de se um foi inserido.

Todo o resto (ano, mês, dia do mês, etc.) é derivado disso e a especificação do formato determina quais detalhes são exibidos. Se uma data de mês / ano for inserida, a única maneira de armazená-la como uma data para que ela seja uma data específica, para que o Excel assuma o primeiro dia do mês.

Consulta de célula não é útil

Se o Excel interpretar uma entrada como uma data, a entrada real não estará mais lá para analisar para determinar o que o usuário digitou (portanto, uma função para exibir o texto da célula não ajudará).

No entanto, você pode ser capaz de assumir o que foi inserido em determinadas circunstâncias. Fiz um teste rápido no Excel 2007 (suponho que esse comportamento não tenha mudado nas versões subseqüentes).

  • Se o Excel atribuir um dia do mês (porque nenhum foi inserido), será o primeiro dia do mês. Se todas as datas para um usuário forem as primeiras do mês e se não houver motivo para que isso seja sempre o caso (ou seja, as datas não são definidas como sempre sendo a primeira), isso seria uma indicação de que apenas mês e ano foram inseridos.

    Por outro lado, se quaisquer datas exibidas como mês / ano contiverem um dia que não seja o primeiro (verifique referenciando a célula de outra célula e exiba mm / dd / aa lá), isso indicaria que o usuário entrou no dia e está sendo suprimido pela formatação. É improvável que um usuário insira o dia somente em datas diferentes do primeiro dia do mês.

  • Se a célula for pré-formatada com um formato de data, as entradas de data serão exibidas nesse formato. Se a célula tiver um formato geral, uma entrada de data será exibida em um formato de data padrão que mostre o mesmo nível de informação. Por exemplo, quando eu digitei 07/15 como entrada para uma célula com um formato geral, ela foi exibida em 15 de julho; não é idêntico ao que eu digitei, mas o mesmo nível de informação.

    Se a entrada de data tiver formatos mistos, isso indicaria que as células não foram pré-formatadas. Portanto, é provável que as datas que mostram apenas mês e ano sejam registradas apenas como mês e ano.

por 30.07.2015 / 20:39