Eu tenho células com datas no Excel. Algumas datas têm dd-mm-aa (por exemplo, 20-01-15), outras apenas têm 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, portanto, deve haver um sinalizador ou configuração em algum lugar para isso.
Se eu pudesse extrair o texto da célula exibido, poderia analisá-lo 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.
microsoft-excel
date
aaronsnoswell
fonte
fonte
mm/yy
formato e o valor da data de dois anosyy
cair entre1
e31
, o Excel realmente o interpretará como ummm/dd
valor no ano civil atual. (por exemplo,12-14
é interpretado como 14 de dezembro de 2015 e não como 1 de dezembro de 2014.) Seyy
for zero ou maior que31
, será interpretadomm/yy
como pretendido.dd-mm-yy
formato, pois ele pode se comportar inesperadamente em você também.Respostas:
Se o usuário digitar uma data, ele poderá ocultar o dia, o mês ou o ano, formatando. Mas é apenas assim que a célula é exibida . Se, no entanto, você procurar na barra de fórmulas ; o dia será visível.
Se seu único interesse é determinar qual dos dois formatos o usuário selecionou (e não o dia do mês atual) , use a função da planilha = Cell () .
fonte
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 que os dados sejam inseridos.
fonte
Sua pergunta é um pouco ambígua. Vou abordar o que acho que você está perguntando.
O que é armazenado
Se você digitar algo que o Excel interpreta como uma data, ele será armazenado 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 a data de referência. Portanto, o valor armazenado é, na verdade, uma contagem de dias, não contém ou não um dia, dependendo se um foi inserido.
Tudo 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 do mês / ano for inserida, a única maneira de armazená-la como uma data para que seja uma data específica, o Excel assumirá o primeiro do mês.
Consulta de célula não é útil
Se o Excel interpreta uma entrada como uma data, a entrada real não está mais lá para ser analisada 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 assumir o que foi inserido em determinadas circunstâncias. Fiz um teste rápido no Excel 2007 (presumo que esse comportamento não foi alterado nas versões subseqüentes).
Se o Excel atribuir um dia do mês (porque nenhum foi inserido), será o primeiro do mês. Se todas as datas para um usuário forem o primeiro do mês e se não houver motivo para que esse sempre seja o caso (ou seja, as datas não sejam definidas como sempre sendo a 1ª), isso seria uma indicação de que apenas mês e ano foram inseridos.
Por outro lado, se alguma data exibida como mês / ano contiver um dia que não seja o 1º (verifique fazendo referência à célula de outra célula e exiba mm / dd / aa), isso indicaria que o usuário digitou o dia e está sendo processado. suprimida pela formatação. É improvável que um usuário insira o dia apenas em datas diferentes do dia 1º do mês.
Se a célula estiver 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 mostra o mesmo nível de informação. Entã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 da 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 tenham sido inseridas apenas como mês e ano.
fonte