Excel vers Word - Changement format date

Bonjour à tous,

Je travaille sur une macro qui remplit des contrôles de contenu de texte enrichir sur Word automatiquement. Tout se passe bien excepté lorsqu'il s'agit de date.

Excel contient une date au format 15/05. Elle est copié sur Word au format 15/05/2022 par exemple.

J'aimerais conserver le format Word sans l'année. J'imagine que cela est dû au compteur jour de Excel, la cellule affiche 15/05 mais garde en mémoire l'année par le biais du compteur jour.

Quelqu'un aurait-il une solution pour m'aider à conserver le même format ou bien à modifier toutes mes dates pour qu'elles gardent le format souhaité en passant sur Word ?

Merci bien

Hello,

Essaie de faire un traitement sur ta date dans ton Excel du style =JOUR(tadate) & "/" & Mois(tadate).

Enfin l’objectif c’est de la récupérer en texte dur

Avec un fichier c’est mieux :)

@+

Bonjour BAROUTE78,

Merci pour la piste, en effet ça fonctionne plutôt bien !

Toutefois ça va me demander de retraiter toutes les colonnes une à une.

Idéalement j'aimerais faire une macro qui remplace les données d'une colonne si elle est au format date mais je ne m'en sors pas.

Je mets un exemple de fichier où je voudrais que la colonne B soit modifiée.

15date-x-ben.xlsx (86.36 Ko)

Merci pour votre aide

Hello,

Base toi sur la colonne D ça devrait être bon

@+

13date-x-ben.xlsx (27.08 Ko)

Bon et bien c'est à ne rien y comprendre. Ce matin le transfert fonctionnait sans indiquer l'année mais ce soir ça ajoute l'année alors que je n'ai pas modifié mes données entre temps !

J'utilise des contrôles de contenu de texte enrichi via ce code :

For Each ctrl In wrdDoc.ContentControls
         If ctrl.Type = 0 Or ctrl.Type = 1 Then
               Set Cell = ActiveSheet.Rows(1).Find(ctrl.Title)
               'la première ligne de l'onglet source de données continent les titres et balises. Ces deux informations doivent être identiques dans
               'les propriétés du contrôle sur Word.
               If Not Cell Is Nothing Then ctrl.Range.Text = Cell.Offset(lignedeb)
               'le contrôle est rempli par les données contenues dans la ligne en cours avec la colonne correspondant au contrôle
             End If
       Next ctrl

J'ai trouvé une solution (qui j'espère sera pérenne cette fois) :

            For Each ctrl In wrdDoc.ContentControls
                If ctrl.Type = 0 Or ctrl.Type = 1 Then
                    Set Cell = ActiveSheet.Rows(1).Find(ctrl.Title)
                    'la première ligne de l'onglet source de données continent les titres et balises. Ces deux informations doivent être identiques dans
                    'les propriétés du contrôle sur Word.
                    If Not Cell Is Nothing Then
                            If ctrl.Range.Text = Format(Cell.Offset(lignedeb), "dd/mm") <> "" Then ctrl.Range.Text = Format(Cell.Offset(lignedeb), "dd/mm")
                            If ctrl.Range.Text = Format(Cell.Offset(lignedeb), "dd/mm") = "" Then ctrl.Range.Text = Cell.Offset(lignedeb)
                    End If
                End If
            Next ctrl
Rechercher des sujets similaires à "word changement format date"