Bonjour à tous!
Je travaille sur un fichier word qui doit ouvrir un fichier excel et executer une macro (AjoutActivite) présente dans un module (NouvelleActivite) de ce fichier excel.
En m'inspirant du forum, j'ai écrit un bout de programme, mais il bloque à l'application de la macro excel, et je ne vois pas pourquoi. J'obtiens une "erreur d'execution" me disant qu'il est "impossible d'executer la macro spécifiée". Bien sur, quand je clique sur le bouton d'aide, j'ai une fenêtre qui s'ouvre avec rien dedans.
Remarque : Si je lance la macro depuis le fichier excel que je viens d'ouvrir, elle fonctionne (=> ça vient pas d'excel);
Voici mon code, si quelqu'un avait une idée? Merci d'avance aux bonnes âmes du forum !
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 Sub FichierWord() 'Déclaration des variables Dim Reponse As Integer 'variable de test sur l'existence ou non d'une analyse Dim xl As Object Dim wb As Object Dim Chemin As String 'chemin d'accès du doc actif et du fichier excel vierge Dim CheminExcel As String 'chemin d'accès + nom du fichier excel vierge Dim NomWord As String 'nom du fichier Word Dim NomExcel As String 'nom du fichier Excel Dim NomGeneral As String 'nom du fichier sans extension 'Boîte de dialogue pour tester si une analyse existe déjà Reponse = MsgBox("L'analyse a-t-elle déjà été engagée?", vbYesNoCancel, "Analyse Environnementale") If Reponse = 6 Then 'si l'analyse existe déjà MsgBox "y'a déjà une analyse" ElseIf Reponse = 7 Then 'si l'analyse n'existe pas encore 'Ouvre et renomme le fichier vierge Excel 'Détermine le chemin d'accès des documents Chemin = ActiveDocument.Path 'Détermine le nom du fichier Word NomWord = ActiveDocument.Name 'Enlève l'extension du nom de fichier général NomGeneral = replace(NomWord, ".doc", "") 'Détermine le chemin d'accès + le nom du doc excel à ouvrir CheminExcel = Chemin + "\Analyse_environnementaleWord.xls" 'Création de l'objet excel Set xl = CreateObject("Excel.Application") 'Active la fenêtre Excel xl.Visible = True 'Ouvre le doc excel vierge Set wb = xl.Workbooks.Open(FileName:=CheminExcel) 'Créée 1 onglet Excel par activité du fichier word Application.Run "xl!NouvelleActivite!AjoutActivite" 'Ligne de l'erreur 'Renomme le fichier excel A LA FIN NomExcel = Chemin + "\" + NomGeneral + ".xls" With xl.Workbooks("Analyse_environnementaleWord.xls") .SaveAs NomExcel End With ElseIf Reponse = 2 Then Exit Sub 'si annuler alors on sort End If End Sub
Partager