Bonjour,
Je voudrais depuis Excel écrire dans un document Word, le but étant de placer le texte de la cellule A1 sur la première ligne aligné à gauche et le texte de la cellule A2 toujours sur la première ligne mais aligné à droite (style CV NOM à gauche et Né le … ). Mon code ne fonctionne pas puisque le texte des deux cellules se retrouve collé l'un à l'autre aligné à droite. Voici mon code, si une âme charitable peut me dépêtrer, je n'arrête pas de tourner en rond, soit tout est à gauche, soit tout est à droite mais jamais ce que je veux. Merci
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 Private Sub CommandButton1_Click() Dim ObjWord As Object Dim ObjDoc As Object Dim ObjRange As Object Dim CheminFichier As String ' Copie la valeur des cellules A1 et A2 Dim ValeurA1 As String ValeurA1 = ThisWorkbook.Sheets("Saisie").Range("A1").Value Dim ValeurA2 As String ValeurA2 = ThisWorkbook.Sheets("Saisie").Range("A2").Value Dim ValeurA3 As String ValeurA3 = ThisWorkbook.Sheets("Saisie").Range("A3").Value Dim ValeurA6 As String ValeurA6 = ThisWorkbook.Sheets("Saisie").Range("A6").Value ' Chemin du fichier Word à ouvrir CheminFichier = "C:\Users\thier\OneDrive\Documents\excel-word\Truc_machin_vide.docx" 'Initialisation de l'objet Word On Error Resume Next Set ObjWord = GetObject(, "Word.Application") If Err.Number <> 0 Then Set ObjWord = CreateObject("Word.Application") End If On Error GoTo 0 ObjWord.Visible = True ' Ouverture du document Set ObjDoc = ObjWord.Documents.Open(CheminFichier) Set ObjRange = ObjDoc.Range(0, 0) ' Colle la valeur de la cellule C1 sur la première ligne, alignée à gauche ObjRange.Collapse 0 'collapse vers le début du document ObjRange.MoveStart , 0 'déplace la sélection vers la première ligne ObjRange.ParagraphFormat.Alignment = 0 ' aligne à gauche ObjRange.InsertBefore ValeurA1 ' Colle la valeur de la cellule C2 sur la première ligne, alignée à droite ObjRange.Collapse 0 'collapse vers le début du document ObjRange.MoveEnd , 1 'déplace la sélection à la fin de la ligne ObjRange.ParagraphFormat.Alignment = 2 ' aligne à droite ObjRange.InsertBefore ValeurA2 ' Sauvegarde et fermeture du document ObjDoc.Save ObjDoc.Close ' Fermeture de Word ObjWord.Quit ' Nettoyage Set ObjDoc = Nothing Set ObjWord = Nothing End Sub
Partager