Impedir que o Excel adivinhe os formatos de células

1

Eu tenho uma coluna como esta:

000123-1234
000123-1234
000123-1234
012345-5678
123456-1234
234567-2345
345678-3456

E preciso remover o traço. Se eu apenas marcar essa coluna e fizer uma substituição de pesquisa, o Excel pensa: 'Sim, tudo bem - agora, esse deve ser um número. E o número não tem nenhum prefixo zero; então é melhor eu removê-los '.    Mas não! Eu preciso do zero!

Eu tentei formatar as células como texto, como 'padrão' e como um número - mas sem sorte.

Como posso evitar que o Excel tente me ajudar - e apenas faça o que eu digo para fazer e apenas isso?

Eu sei que posso fazer duas novas colunas onde primeiro obtenho os primeiros 6 chars - e então pegue os últimos 4 chars e junte-os ... Mas essa é realmente a melhor maneira de fazer isso? / p>     

por Zeth 07.05.2018 / 22:09

3 respostas

1

Isso parece ser um comportamento conhecido no Excel.

Você pode usar uma macro para preservar a formatação do texto e executar um localizar / substituir. Use a seguinte sub-rotina:

Sub RemoveHyphen(RangeString As String)

For Each Cell In Range(RangeString)
    Cell.NumberFormat = "@"
    Cell.Value = Replace(Cell.Value, "-", "")
Next Cell

End Sub

Chame a sub-rotina com RemoveHyphen("A1:A7") na janela imediata do VBA. Ele formatará todas as células como texto e removerá os hipensos.

    
por 07.05.2018 / 22:41
1

Com dados na coluna A , em B1 digite:

=SUBSTITUTE(A1,"-","")

e copie para baixo. Em seguida, copie a coluna B e PasteSpecialValues de volta para a coluna A . Quaisquer zeros à esquerda serão preservados!

    
por 08.05.2018 / 01:56
1

Você pode usar um formato personalizado para mostrar os zeros à esquerda:

Digite quantos 0 , pois há dígitos em seus números.

    
por 08.05.2018 / 00:59