Como converter em lote todas as datas / horas em um intervalo de células para seqüências de caracteres?

2

( Observação: Essa pergunta SO é semelhante, mas estou interessado em soluções Daí a "conversão em lote" no título. Além disso, eu originalmente postei essa pergunta para o StackOverflow, mas depois percebi que estava especificamente interessado em soluções que não precisavam de programação VBA, então mudei a pergunta para SuperUser. , de acordo com a sugestão dada aqui .

Qual é a maneira "menos invasiva" de converter todas as "células de data e hora" de uma planilha do Excel para o valor da string correspondente?

Por "célula datetime" quero dizer uma cujo conteúdo é na verdade um número de ponto flutuante, mas cujo formato faz com que seja exibido como uma string de data e hora.

Por "menos invasivo", quero dizer algum método que requer apenas a modificação mais mínima para a planilha. (Em particular, gostaria de evitar, ou pelo menos minimizar, a quantidade de cortes e colagens necessários.)

O método ideal seria aquele que exigiria apenas a seleção das células datetime a serem transformadas em strings e a aplicação da conversão necessária "in-place". Eu procurei algo assim sem sucesso.

Vou enviar a melhor solução que encontrei até agora para esse problema (veja as respostas abaixo), mas acho essa solução extremamente incômoda e propensa a erros, e gostaria de aprender de uma forma mais segura e econômica para alcançar o mesmo resultado.

    
por kjo 11.06.2013 / 20:06

1 resposta

3

(NB: Eu sou um completo burro com o Excel. Tenho certeza que existem maneiras menos complicadas de fazer o que eu descrevo abaixo. Estou postando esta solução na esperança de que alguém que realmente conheça o Excel publique um melhor.)

A melhor solução que encontrei até agora (com base em esta resposta SO ) é a seguinte. Suponha que as células a serem convertidas estejam no intervalo A1:100 e suponha que a coluna X não esteja sendo usada. Coloque a seguinte fórmula na célula X1 :

=TEXT(A1, "DD/MM/YYYY hh:mm:ss")

(Claro, modifique o formato datetime para atender às suas necessidades.)

Em seguida, "copie e arraste" essa fórmula para todas as células no intervalo X2:100 . Em seguida, copie o intervalo X1:100 e cole-o no intervalo A1:100 usando o comando Paste Special... com sua opção Values .

Por fim, Clear > All o intervalo X1:100 .

    
por 11.06.2013 / 20:07