Não é possível converter texto para dd-mm-aaaa obrigatório no Excel

Não é possível converter texto para dd-mm-aaaa obrigatório no Excel

Estou com dor de cabeça tentando resolver o problema abaixo do Excel: Estou usando o Excel 2003: importe milhares de dados do text.txt abaixo do formato e tentando dividir dd-mm-aaaa

-> 6022015 (número 7)

->26012015 (Número 8)

No Excel, Ferramentas de Dados>Texto para Coluna>Largura Fixa

-> 6!02!2015 (número 7)

->26!01!2015 (número 8)

Formato de dados da coluna, selecione Geral e finalize. Para 7 números, consiga dividi-los em 3 colunas. Mas para o número 8, ocorre o erro abaixo. Abaixo estão os resultados

->26012015 changeto->2 60 12015 "Isso deveria ser 26 1 2015"

-> 6022015 alterado para->6 2 2015

Alguém pode identificar o erro e fornecer uma solução, por favor?

Responder1

Espero que sua data esteja no formato "ddmmaaaa", em vez de texto na coluna, tente localizar e substituir"!"comnadaem seguida, aplique a fórmula abaixo.

=IF(LEN(A2)=8,LEFT(A2,2)&"-"&MID(A2,3,2)&"-"&RIGHT(A2,4),"0"&LEFT(A2,1)&"-"&MID(A2,2,2)&"-"&RIGHT(A2,4))

Espero que seja isso que você esperava :)

Responder2

Suponha que os dados brutos estejam no formato dmmyyyy(7 dígitos) ou ddmmyyyy(8 dígitos).

  1. Simplesmente copie todos os dados para a coluna A (ou importe os dados para a coluna A).

  2. Entre em B1 =DATE(RIGHT(A1,4),MID(A1,LEN(A1)-5,2),LEFT(A1,LEN(A1)-6))e copie para baixo.

  3. Formate a coluna B como dd-mm-yyyy. A coluna B será o que você deseja.

Responder3

Tente este:

=substitute(a1,"!","/")

e para garantir, se não voltar como uma data, tente adicionar zero:

=substitute(a1,"!","/")+0

E/ou, se contiver algum espaço em branco na célula (à esquerda ou à direita do texto detalhado), corte a célula assim:

=trim(substitute(a1,"!","/")+0)

Responder4

Eu pessoalmente usaria a abordagem wilsonadotada, desmontando-a e montando-a novamente. No entanto, se desejar ter sucesso no Text to Columnsassistente, você deverá ter delimitadores ou dados do mesmo comprimento.

Dados do mesmo comprimento são fáceis de obter. Basta usar uma "coluna auxiliar" próxima a, ou, bem, em qualquer lugar conveniente, e usar a fórmula:

=IF(LEN(A1)=7,")"&A1,A1)

copiado até onde for necessário para obter uma coluna de oito valores de caracteres. Depois de fazer isso, copie a coluna e Paste|Values|Specialobtenha uma coluna de valores, não de fórmulas. Use o Text to Columnsassistente para isso, com largura fixa, para que você possa interpretá-lo como datas, uma única coluna (você não quer que seja dividido em partes) e informe-o DMYpara o tipo de data.

Ele fornecerá uma coluna de saída que agora será "datas reais" e você poderá copiá-la e colá-la sobre os dados originais. Ou por isso, ou o que quer que seja.

A chave é fazer com que todos os dados tenham oito caracteres para que possam ser tratados da mesma forma: o Excel não pode dizer se um dado de sete dígitos é um dia de um dígito, um mês de dois dígitos ou vice-versa, então você deve trabalhar com essa preocupação.

Se você tivesse alguns com seis dígitos, seria a mesma ideia básica, só que um pouco mais difícil de preencher.

Além disso, isso funciona para você, PORQUE você SABE que os últimos quatro dígitos são o ano, não os anos de dois dígitos, e que os meses são todos valores de dois dígitos, não os meses de um dígito. Se você não pudesse ter certeza disso, seria necessária uma abordagem mais sofisticada.

informação relacionada