Converter Texto par...
 
Notifications
Clear all

Converter Texto para data e Hora

7 Posts
2 Usuários
0 Reactions
2,690 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Célula A1: Data: "1/6/2017"
Célula B1: Hora: "6:20pm"

Importo da Web a data e hora conforme acima, inclusive com aspas.
Preciso converter a data pro formato dd/mm/aaaa (06/01/2017) e as horas pro padrão 24 horas (18:20)

Grato,
Pedro

 
Postado : 07/01/2017 6:24 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite Pedro

No tópico abaixo tem uma macro que retira as aspas duplas.

viewtopic.php?f=10&t=2963

Se foi útil, clique na mãozinha.

[]s

 
Postado : 07/01/2017 7:41 pm
(@djunqueira)
Posts: 0
New Member
 

Vc poderia experimentar a fórmula abaixo como na planilha anexa:

=DATA.VALOR(SUBSTITUIR(A1;CARACT(34);""))+VALOR.TEMPO(SUBSTITUIR(SUBSTITUIR(B1;CARACT(34);"");DIREITA(SUBSTITUIR(B1;CARACT(34);"");2);" "&DIREITA(SUBSTITUIR(B1;CARACT(34);"");2)))

 
Postado : 07/01/2017 9:39 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Patropi,Obrigado.
Ei vi o link mas, neste caso, não quero usar VBA.

DJunqueira,
A hora retornou correto.
A data tá retornando no formato americano (01/06/2017 18:20)
Eu alterei a formatação personalizada para mm/dd/aaaa hh:mm;@
e deu certo. Retornou (06/01/2017 18:20)
Não entendi.

 
Postado : 08/01/2017 5:04 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Outro problema:

O teste que fiz foi na planilha que você mandou.
Na minha, retorna #VALOR!.
Então percebi que a consulta na WEB retorna data e valor com 4 aspas.
Célula A1: Data: ""1/6/2017""
Célula B1: Hora: ""6:20pm""

Grato,
Pedro

 
Postado : 08/01/2017 5:22 am
(@djunqueira)
Posts: 0
New Member
 

Nova tentativa.
Confesso q não tinha reparado q havia uma conversão de padrão de data.

 
Postado : 08/01/2017 6:52 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Valeu, DJunqueira
A fórmula =DATA(DIREITA(SUBSTITUIR(A1;CARACT(34);"");4);SUBSTITUIR(ESQUERDA(SUBSTITUIR(A1;CARACT(34);"");2);"/";"");EXT.TEXTO(SUBSTITUIR(A1;CARACT(34);"");LOCALIZAR("/";SUBSTITUIR(A1;CARACT(34);""))+1;LOCALIZAR("/";SUBSTITUIR(A1;CARACT(34);"");4)-LOCALIZAR("/";SUBSTITUIR(A1;CARACT(34);""))-1))+VALOR.TEMPO(SUBSTITUIR(SUBSTITUIR(A2;CARACT(34);"");DIREITA(SUBSTITUIR(A2;CARACT(34);"");2);" "&DIREITA(SUBSTITUIR(A2;CARACT(34);"");2)))

Ficou very good.

Quem quiser em VBA, pode usar a função:

Sub RemoveAspasAlteraFormato()
Plan1.Range("B1").Value = Format(Replace(Plan1.Range("A1").Value, Chr(34), ""), "dd/mm/yyyy")
Plan1.Range("B2").Value = Format(Replace(Plan1.Range("A2").Value, Chr(34), ""), "HH:MM")
End Sub

 
Postado : 08/01/2017 8:08 am