Notifications
Clear all

PROBLEMA NA FORMATAÇÃO DE DATA

3 Posts
1 Usuários
0 Reactions
552 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá pessoal, tenho uma planilha que faço a importação de dados no meu sistema para excel, mas um problema na exportação a data do dia 01 a 12 esta na formatação mm/dd/aaaa e em texto, do dia 13 a 30 ou 31 estão com a formatação dd/mm/aaaa e em texto.

Fiz até uma macro para reverter esta situação, mas não deu certo.

Sub Formata_Dt_Texto_em_Dates()

    Dim sRange
    Dim sLin, I As Long
    Dim sAdr As String
    Dim MyMonth, MyMonth2, MyStr
    Dim sDtInicio

    sDtInicio = [J2] 'Data Inicial em J2

    MyMonth = Month(sDtInicio) 'Capta o Mes Inicial em J2

    sLin = Range("J65536").End(xlUp).Row  ' Ultima linha preenchida

    Set sRange = Sheets("Plan1").Range("J2:" & "J" & sLin) 'Alterar o nome da Sheets caso seje modificado
    For Each sLin In sRange
   
        sAdr = sLin.Address(False, False)
        
        MyMonth2 = Month(sLin)
        
        If MyMonth2 < MyMonth Then
            
            MyStr = Format(sLin, "mm/dd/yyyy")
    
            Range(sAdr).Value = CDate(MyStr)
             
        Else
            
            Range(sAdr).Value = CDate(sLin)
        
        End If
    
    Next
Sheets("Menu").Select
Application.ScreenUpdating = True
End Sub

Preciso que a macro converte as datas de 1 a 12 na formatação em data dd/mm/aaaa e de 13 a 31 na formatação em data.

silvajmp

 
Postado : 11/11/2013 8:42 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

O ideal é tratar as datas na importação, com é feita essa importação.
Pode tambem experimentar:

If Left(sLin, 2) < 13 Then
          MyStr = Format(sLin, "mm/dd/yyyy")
         Range(sAdr).Value = CDate(MyStr)
Else
         MyStr = Format(sLin, "dd/mm/yyyy")
         Range(sAdr).Value = CDate(MyStr)
End If
 
Postado : 11/11/2013 9:44 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Reinaldo obrigado por me atender, fiz a alteração e deu certo, valeu.

silvajmp

 
Postado : 11/11/2013 10:47 am