alterar de 2017/2/3 para 2017/02/03

0

Eu tenho uma coluna no Excel que mostra a data, mas não no formato de data, está no formato de texto e os valores para as datas que têm um caractere para o mês ou dia não contêm um zero antes deles.

Por exemplo, temos 2017/1/3 ou 2017/11/4, mas queremos alterá-los para 2017/01/03 // 2017/11/04.

Como posso fazer isso de maneira simples sem usar o formato de data? Aqui está o que eu tentei que é muito longo e complicado:

  1. data de divisão para ano, mês e dias
  2. se o comprimento do mês < 2, adicione 0 antes do mês
  3. se o comprimento do dia < 2, adicione 0 antes do dia
  4. construiu nova data
por abi 09.08.2018 / 19:39

2 respostas

1

Todas as datas que você usa como exemplos são perfeitamente reconhecíveis pelo Excel como datas. Então, se você quiser datas "reais" que você pode formatar como quiser e que o Excel pode usar diretamente em matemática:

1) Se você quiser que os dados originais permaneçam e tenha os dados de data formatáveis disponíveis, use a fórmula = A1 * 1 (se sua data estiver na célula A1) onde quer que você queira fazer o trabalho (talvez vários colunas sobre, ou em outra página ... o que melhor se adequar ao seu esquema). E formate como desejar ("aaaa / mm / dd" ou "aaaa / dd / mm" - seus exemplos não desambiguem qual, m-d ou d-m, você tem).

[Eu poderia acrescentar que, embora não pareça de seu interesse para este problema, se você tiver datas de texto e simplesmente quiser usá-las em outras fórmulas, embora usualmente trabalhe para simplesmente referenciá-las (como em. ..A1 + 7 ... para obter uma data uma semana depois) em sua fórmula, talvez houvesse um caso único, ímpar, no qual você faria isso e o stil lit falharia. Nesse caso, basta fazer essa multiplicação para que o exemplo acima seja ... A1 * 1 + 7 ...]

2) Se desejar substituir os dados originais por datas "reais", você poderá reformatar o intervalo de datas de "texto" para um formato personalizado de "aaaa-mm-dd" e, em seguida, digitar "1" em um cell em algum lugar, copie essa célula, selecione o intervalo de datas novamente e Paste | Special | Multiply. Isso supera o fato de que, quando você muda de texto para números, o Excel nunca recalcula com essa ideia. Para uma única célula, pressionando F2 depois de reformatar, então Enter (imediatamente, sem fazer alterações) fará a mesma coisa sem ser pesado, mas se você tiver 14.293 dessas datas ...

3) Você também pode obter o resultado de 2) com o recurso "Text to Columns". Basta selecionar os dados e clicar em "Text to Columns", depois escolher "Fixed Width", colocar o marcador de linha de largura em "10" e, finalmente, clicar em "Date" como formato de dados da coluna. Pressione "Finish" e você tem uma coluna de datas reais pronta para você aplicar o formato desejado.

Honestamente, para um uso único, 3) parece mais simples que 2) e acontece "in loco" para não atrapalhar sua estrutura. Mas você não gostaria de fazer isso toda vez que alguém adiciona uma data, dia após dia, ao longo dos anos. Lembre-se, o "uso único" pode ocorrer repetidas vezes: digamos que você esvazie seus dados e carregue um novo conjunto a cada semana. Então 3) não seria um peru. E sua abordagem seria mais fácil para fazer uma pequena macro gravada para uso a cada vez.

Bem, uma pequena resposta ficou um pouco longa, então ...

    
por 10.08.2018 / 01:29
1

Como sua Data está no formato TEXTO, então gostaria de sugerir um método mais fácil para convertê-la na Data do Excel.

Faça o seguinte:

  1. Digite 0 em uma célula e Copiar ou você também pode copiar qualquer célula em branco.
  2. Selecione Intervalo de datas.
  3. Clique com o botão direito & a partir do menu Poped up clique no Colar Especial e depois em clique nas opções Operação Adicionar & termine com OK .
  4. Agora as datas serão parecidas com os números ou seja, 43322 .
  5. Como as datas já estão selecionadas apenas Clique com o botão direito do mouse & do menu clique no comando Formatar célula .
  6. Finalmente, aplique yyyy/mm/dd format & termine com Ok.
por 10.08.2018 / 10:55