Bonjour à tous,
Je développe fréquemment des solutions impliquant une automation Word <-> Excel.
Je rencontre un problème lors de l'export de données financières d'un classeur Excel dans les tableaux d'un document Word : les décimales des nombres entiers tels que "1 000,00 €" (format de cellule monétaire dans Excel) disparaissent invariablement pour donner "1 000 €" dans mon tableau, alors que "1 000,26 €" ne pose aucun problème.
Voici mon code pour cette opération d'export, en me limitant à une cellule d'exemple (la valeur de la cellule "B2" de la feuille appelée "Chiffrage" est exportée dans le 5e tableau du document, ligne 3, colonne 2) :
Seule option que je voie spontanément : affecter la valeur de la cellule Excel à une propriété personnalisée de type nombre dans le document, insérée dans la cellule du tableau Word ; je fonctionne très souvent avec les CustomDocumentProperties pour automatiser mes process, mais c'est plus long et plus contraignant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Sub ExportDocWord() Dim ExcelApp As Excel.Application Dim WordApp As Word.Application Dim WordDoc As Word.Document Dim ExcelWb As Excel.Workbook 'Création instance Word Set WordApp = New Word.Application 'Affiche Word pendant l'opération WordApp.Visible = True 'Ouvre le modèle Word Set WordDoc = WordApp.Documents.Add("C:\[...].docx") With WordDoc .Tables(5).Cell(3, 2).Range = Sheets("Chiffrage").Range("B2") ' Et ainsi de suite End With
Quelqu'un a-t-il une idée pour préserver le format monétaire des données lors de cette opération de "réécriture" simple des valeurs Excel dans les cellules de tableaux Word ?
Merci d'avance pour votre aide, bonne journée.
Partager