Convertendo uma data mmm-yy no formato de string para o formato de data

0

Eu tenho um documento do excel que lista datas no formato mmm-yy como uma string (elas foram copiadas de um pdf). Eu preciso ser capaz de determinar o número de dias entre essas datas, no entanto, o Excel entende mal como formato mmm-dd.

Por exemplo: preciso encontrar o número de dias entre 11 de junho e 13 de junho. Diga que eles estão em A1 e B1, respectivamente. Na próxima célula eu digite "= B1-A1". O número de dias deve ser 730, mas o Excel coloca 2. Calcula 13 de junho de 2014 - 11 de junho de 2014.

Quando tento alterar o formato para a data, isso me dará algo como Jun-11 - > Jun-14 (ainda está em 11 de junho de 2014).

Eu tentei concatenar as datas para fazer uma data completa ("Jun" + "- 1 -" + "11") = Jun-1-11, mas ainda aparece como uma string e não consigo executar as operações necessárias com ele.

Existe uma maneira de corrigir facilmente o formato dessas datas? Eu poderia fazer isso manualmente com o Replace, mas existem várias centenas.

    
por Joshua J 01.10.2014 / 17:18

1 resposta

2

Primeira sugestão:

Realce a coluna do Excel que contém as strings de data e Formate as células como "Geral" em vez de "Texto". O Excel deve então descobrir que são datas e provavelmente irá convertê-las corretamente.

Segunda sugestão (respondendo mais diretamente à pergunta):

Você pode usar MID , LEFT e / ou RIGHT para separar manualmente a string de data e, em seguida, usar DATE para convertê-la em um tipo de data real.

Referência (consulte a Opção nº 3)

DATE Syntax: DATE (ano, mês, dia)

Então diga A1 contém "JUN-13" ...

=DATE(CONCATENATE("20",RIGHT(A1,2)),MONTH(1&LEFT(A1,3)),1)

CONCATENATE é usado para unir a string "20" a a string que representa o ano, para garantir que não pense que "13" é "1913" durante a conversão.

A função MONTH é usada para obter o número do mês com base na string de texto fornecida. o 1& bit é forçar MONTH a unir o 1 aos três primeiros caracteres da célula (digamos "1Jun"). O Excel reconhece isso como um formato de data e trata como uma data para a função MONTH para extrair o número do mês.

Referência

Depois de concluídos, DATE é usado para combinar bits em uma data final (usando um "Dia" de 1).

Usando seus dados de exemplo e a fórmula acima para convertê-los e colocar os resultados em novas células e, em seguida, realizar a subtração nas células com os resultados me dá 731 (ano bissexto? :)).

    
por 01.10.2014 / 18:38