Macro jour et date inverser

creolia

XLDnaute Impliqué
bonsoir a tous je sais ce sujet à deja été traiter mais les solutions proposé j'arrive pas à savoir ou les mettre.

donc j'utilise cette macro qui récupére sur plusieur onglet nomer formation formant ma base de donné des lignes si celle derniere est supérieure à 01/01/1900 et me la copie dans l'onglet recape cela fonctionne bien si ma date est 22/12/2009 mais si cette derniere est ecris comme ceci 04/11/2009 elle apparais en 11/04/2009

donc elle inverse le jour et le mois pouvez vous m'aider à modifier ma macro pour que la date redevienne correcte

Code:
Sub RH()

Sheets("Recape").Select
     Range("A4:F6500").Select
    Selection.ClearContents
    Range("A4").Select
  

    Dim ws As Worksheet, Tbl() As Variant, C As Integer


    
ReDim Tbl(1 To 6, 1 To 1)
C = 1
    For Each ws In Worksheets
        If Left(ws.Name, 9) = "FORMATION" Then
            With ws
                For Each CEL In .Range("E5:E" & .Range("E65000").End(xlUp).Row)
                    If CEL > "01/08/1900" Then
                        L = CEL.Row
                        Tbl(1, C) = .Range("B" & L).Value
                        Tbl(2, C) = .Range("C" & L).Value
                        Tbl(3, C) = .Range("D" & L).Value
                        Tbl(4, C) = .Range("K" & L).Value
                        Tbl(5, C) = .Range("E" & L).Value
                        Tbl(6, C) = .Range("F" & L).Value
                        C = C + 1
                        ReDim Preserve Tbl(1 To 6, 1 To C)
                    End If
                Next CEL
            End With


        End If
    Next ws
    
    Tbl = Application.Transpose(Tbl)
    
        With Sheets("Recape")
        LI = .Range("A3000").End(xlUp).Row + 1
            .Cells(LI, 1).Resize(UBound(Tbl, 1), UBound(Tbl, 2)) = Tbl
            
    End With

merci d'avance pour votre aide j'ai mis egalement une pj simplifier.
 

Pièces jointes

  • date.zip
    38.1 KB · Affichages: 39
  • date.zip
    38.1 KB · Affichages: 46
  • date.zip
    38.1 KB · Affichages: 48

Softmama

XLDnaute Accro
Re : Macro jour et date inverser

Bonjour creolia,

Sans avoir testé, je dirais de rajouter une ligne à la suite de :
Code:
           .Cells(LI, 1).Resize(UBound(Tbl, 1), UBound(Tbl, 2)) = Tbl
rajouter derrière :
Code:
           .Cells(LI, 1).Resize(UBound(Tbl, 1), UBound(Tbl, 2)).formatnumber = "dd/mm/yy"

A voir. Ou sinon avec une petite PJ, ça serait bcp plus simple en effet oui.
 

creolia

XLDnaute Impliqué
Re : Macro jour et date inverser

Bonsoir Softmama et merci pour ton aide j'ai essayer comme tu ma dit mais malheureusement y a un beug erreur generé par l'objet.

PS: la piece jointe à été fournie dés la création du fil sauf erreur de ma part
 

JCGL

XLDnaute Barbatruc
Re : Macro jour et date inverser

Bonjour à tous,

Peux-tu essayer avec

VB:
Sub RH()
    Dim ws As Worksheet, Tbl() As Variant, C As Integer
    Sheets("Recape").Select
    Range("A4:F6500").ClearContents
    Range("A4").Select

    ReDim Tbl(1 To 6, 1 To 1)
    C = 1
    For Each ws In Worksheets
        If Left(ws.Name, 9) = "FORMATION" Then
            With ws
                For Each CEL In .Range("E5:E" & .Range("E65000").End(xlUp).Row)
                    If CEL > "01/08/1900" Then
                        L = CEL.Row
                        Tbl(1, C) = .Range("B" & L).Value
                        Tbl(2, C) = .Range("C" & L).Value
                        Tbl(3, C) = .Range("D" & L).Value
                        Tbl(4, C) = .Range("K" & L).Value
                        Tbl(5, C) = Format(.Range("E" & L).Value, "mm/dd/yyyy")
                        Tbl(6, C) = Format(.Range("F" & L).Value, "mm/dd/yyyy")
                        C = C + 1
                        ReDim Preserve Tbl(1 To 6, 1 To C)
                    End If
                Next CEL
            End With
        End If
    Next ws
    Tbl = Application.Transpose(Tbl)
    With Sheets("Recape")
        LI = .Range("A3000").End(xlUp).Row + 1
        .Cells(LI, 1).Resize(UBound(Tbl, 1), UBound(Tbl, 2)) = Tbl
    End With
End Sub

A+ à tous
 

creolia

XLDnaute Impliqué
Re : Macro jour et date inverser

Bonsoir ricard678 et JCGL merci a vous 2 de m'avoir aider

j'ai opter pour une histoire de meilleur comprehension à la solution de JCGL qui à résolu donc mon probleme

merci encore a tous ceux qui mon aider et à trés bientot bonne nuit