Como parar o código VBA de dentro do Excel convertendo Text to Time?

0

Eu tentei formatar os campos de entrada como texto, mas sem sucesso. Quando eu passo por ele no depurador, ele mostra um número duplo que presumo ser a conversão de data. Eu só quero tratar isso como texto e não convertê-lo em hora / data.

Alguém pode me dizer como evitar a conversão?

O campo de texto possui YY.MM.DD hh: mm: ss no texto. Eu quero remover os segundos, então eu uso:

Select.Value=MID(Select.Value,1,16) 

Isso não funciona. Eu coloquei o texto no campo e truncar as últimas 3 posições.

Guilherme
fonte
Por favor, verifique a formatação da célula para garantir que seja "Geral" ou "Fórmula" e não "Texto" na sua célula ref.
skub
Eu acho que isso é mais uma questão para stackoverflow.com (programação relacionada).
Ben

Respostas:

1

Se você estiver usando o VBA, tente usar o formato:

Select.Value=FORMAT(Select.Value,"YY.MM.DD hh:mm")
Tiago Cardoso
fonte
0

Tente colocar uma cota única antes do campo de texto para forçá-lo a ser considerado como texto.

paulmorriss
fonte
0

Não está claro o que você está tentando alcançar com o valor do tempo, o que afeta as soluções propostas. Contudo:

Se você deseja especificamente fazer isso por meio do VBA, é possível definir uma variável de string e depois passar o valor de tempo:

strTextValue = cstr(format(selection.value,"YY.MM.DD HH:MM"))

Você também pode fazer isso na planilha diretamente, por exemplo:

=TEXT(range("A1"),"YY.MM.DD HH.MM"))
Diem
fonte