Formato Excel Text to Date

0

Eu desejo converter a string de texto, (importada para o excel como um campo formatado 'Geral') em formato de data exibindo-a como; dd / mm / aaaa, no entanto todas as tentativas falharam até agora, incl. a opção text to columns, reformatando-a como um campo de data usando English (UK) como Locale.

Eu também tentei analisar o texto usando uma fórmula baseada nas funções: DATE, LEFT, MID e RIGHT; sem sucesso. O problema parece ser a inclusão do / na cadeia de texto e o fato de eu querer trocar o formato de dd / mm / aaaa para dd / mm / aaaa. Alguém aí experimentou esse problema?

    
por John P 08.09.2017 / 14:29

2 respostas

2

Com Texto em A1 , em B1 digite:

=DATE(RIGHT(A1,4),LEFT(A1,FIND("/",A1)-1),TRIM(MID(SUBSTITUTE($A1,"/",REPT(" ",999)),2*999-998,999)))

e aplique o formato adequado:

    
por 08.09.2017 / 14:54
0

Acabei de confirmar o palpite de Dave no meu próprio computador, que as configurações do relógio da máquina não afetam apenas o Excel, limitam <<> a capacidade do Excel de entender datas diferentes do formato do relógio do computador.

Pessoalmente, configurei meu relógio do Windows para exibir dd-mm-yy, embora esteja nos EUA. Então, quando eu digito "31/12/2017", o Excel não pode entender que essa é uma data, não importa o que eu tente. Alterar o formato numérico para Data abreviada, Data longa ou Número não faz diferença, ainda é uma string. Sujeitando-o a funções como DATEVALUE (), VALUE () ou TEXT ("31/12/2017", "dd / mm / aaaa") retorna um valor de erro #VALUE! erro.

Mas para não deixá-lo sem nada, eu juntei uma fórmula não tão bonita, mas funcional, para aplicar às suas células:

onde

A1 ="12/31/2017"
A2 =LEFT(A1,FIND("/",A1)-1) [month]
A3 =MID(A1,FIND("/",A1)+1,(FIND("/",A1,FIND("/",A1)+1))-(FIND("/",A1)+1)) [day]
A4 =RIGHT(A1,4) [year]

você iria concatenar como

=CONCATENATE(A3,"/",A2,"/",A4)

para uma fórmula total geral de

=CONCATENATE(MID(A1,FIND("/",A1)+1,(FIND("/",A1,FIND("/",A1)+1))-(FIND("/",A1)+1)),"/",LEFT(A1,FIND("/",A1)-1),"/",RIGHT(A1,4))
    
por 08.09.2017 / 19:29