XL 2016 VBA : inversion de Date sur Range.Resize ... = Tableau après Transpose du Tableau

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

crocrocro

XLDnaute Impliqué
Bonjour à tous,
j'ai un problème d'inversion de date lors d'un vidage d'un tableau mémoire dans un tableau structuré suite à un Transpose du tableau mémoire.
Par exemple 05/07/2024 09:00 dans la feuille Feuil1 devient 07/05/2024 09:00 dans la feuille Feuil3
Voici le code ultra-réduit pour exposer mon problème.
VB:
Public Sub CopyTableau()
Dim T1() As Variant
Dim T1T() As Variant
Dim T2() As Variant

    T1 = Sheets("Feuil1").Range("Tableau1").Value
    
    'Copie de Tableau1 vers Tableau2 OK
    Sheets("Feuil2").Range("Tableau2").Resize(UBound(T1, 1), UBound(T1, 2)) = T1
        
    'Copie de Tableau1 vers Tableau3 KO
    T1T = Application.WorksheetFunction.Transpose(T1)
    ' dans le Transpose, on perd le format Date, transformé en String
    T2 = Application.WorksheetFunction.Transpose(T1T)
    ' T2 correspond à T1
    '    MAIS la date se retouve avec mois et jour inversés du fait de la transformation en String par le transpose
    Sheets("Feuil3").Range("Tableau3").Resize(UBound(T2, 1), UBound(T2, 2)) = T2
End Sub
Dans les 3 feuilles, la colonne date est avec le même format Date
1721462412892.png

Dans le Tableau T1 (non transposé, la date est bien au format date
1721462476920.png

Dans le Tableau T1T (transposition de T1), la date est au format String
1721462544398.png

Et bien sûr,
Dans le Tableau T2 (Transposition de T1T), elle est au format String
1721462623844.png


Un remarque :
J'utilise le Transpose à cause de la Contrainte du Redim Preserve (absent du code de l'exemple) qui ne peut se faire que sur la dernière (la 2ème) dimension.

Merci d'avance
 

Pièces jointes

Merci Job75,
et, comme souvent, mais pas toujours, la solution à un problème Excel tient à peu 2 choses (mauvais jeu de mots).
En bon élève, je suis allé voir la différence entre Value et Value2
La seule différence entre cette propriété et la propriété Value est que la propriété Value2 n’utilise pas les types de données Currency et Date .
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
1 K
Retour