Notifications
Clear all

Conversão Data yyyymmdd

11 Posts
4 Usuários
0 Reactions
2,380 Visualizações
(@davison)
Posts: 8
Active Member
Topic starter
 

Bom dia Pessoal tudo bem?

Gostaria de um auxilio de vocês,

Criei um código vba para importação de um arquivo txt, neste arquivo possui um campo de data onde o mesmo está vindo no formato americano yyyymmaa quando o loop percorre o arquivo ele transporta este campo para um celula especifica: Sheets("Registro10").Cells(j, 8) = Mid(linha, 108, 8) eu consigo já colocar na frente deste comando outro para formatar a data para o formato dd/mm/aaaa?

Desde já agradeço a atenção.
Att;
Davison

 
Postado : 17/08/2016 7:21 am
(@edivan)
Posts: 119
Estimable Member
 

Olá, Tenta assim (não testei OK)

Sheets("Registro10").Cells(j, 8) = Format(Mid(linha, 108, 8), "dd/mm/yyyy")

Visite meu blog: programacaopassoapasso.wordpress.com

 
Postado : 17/08/2016 7:33 am
(@davison)
Posts: 8
Active Member
Topic starter
 

Bom dia Edivan

Obrigado pela ajuda, mas deu um erro: "Erro em tempo de execução 6 - Estouro"

você sabe como soluciona?

Obrigado

 
Postado : 17/08/2016 7:37 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

davison, a instrução que o Edivan passou está correta, o ideal seria você anexar um modelo simplificado para analise dos dados que tem.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/08/2016 12:13 pm
(@davison)
Posts: 8
Active Member
Topic starter
 

Boa tarde Mauro

Segue em anexo Planilha e arquivo de importação.

Obrigado

Att;
Davison

 
Postado : 17/08/2016 12:25 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa tarde davison,

Você enviou uma planilha com senha.

att,

 
Postado : 17/08/2016 12:31 pm
(@davison)
Posts: 8
Active Member
Topic starter
 

Desculpe,

segue sem senha.

Obrigado

 
Postado : 17/08/2016 12:55 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa tarde Davison,

Encontrei uma possível solução, de uma olhada nas linhas 141 e 147. Utilizei as funções Left e Right do VBA para extrair e organizar já no formato dd/mm/aaaa.

'OBS: Eu desativei o evento que verifica o nome do usuário quando se abre o arquivo, não esqueça de retirar os comentários.

att,

 
Postado : 17/08/2016 2:09 pm
(@davison)
Posts: 8
Active Member
Topic starter
 

Boa tarde Bruno

ficou muito bom o código só que tem um erro na data de inicio da uma olhada para você ver o mês e dia ainda está invertido.

Obrigado

 
Postado : 17/08/2016 2:51 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Davison,

Altere a linha da "Data Final" para essa:

Sheets("Registro10").Cells(j, 8) = _
        Left(Right(Mid(linha, 108, 8), 4), 2) _
        & "/" & _
        Right(Mid(linha, 108, 8), 2) _
        & "/" & _
        Left(Mid(linha, 108, 8), 4) 'Data Início

De qualquer forma, é um comportamento no mínimo bizarro essa data. Porque agora o código coloca o mês na frente do dia e na célula vai o dia na frente do mês.

Teste para mais e diferentes dados e verifique se o comportamento se mantém.

att,

 
Postado : 17/08/2016 4:03 pm
(@davison)
Posts: 8
Active Member
Topic starter
 

Obrigado Bruno

Deu certinho agora.

 
Postado : 18/08/2016 6:30 am