Lorsque que j'exécute ma macro une seconde fois, une notification m'indique "erreur d'exécution 462 - le serveur distant n'existe pas ou n'est pas disponible."
je suis obligé "d’arrêter le processus" microsoft word pour re-utiliser ma macro.
pouvez-vous me dire d'ou ça vient SVP ?
Sub creation_lettre() Dim test As String Dim wordApp As Word.Application Dim wordDoc As Word.Document
n = 0
'Ouvertur du UserForm (Fenêtre) ou l'on choisi la ligne pour le Pdf à créer. CreaPDF.Show
If n <> 0 Then
'ouvre session word Set wordApp = New Word.Application 'ouvre du document Word (Chemin à modifier en fonction du lieu du model) Set wordDoc = wordApp.Documents.Open("C:\Users\E1561\Desktop\Modèle_Attestation_EASY_BOURSE.docm ") 'word est masqué pendant l'opération
'Petit test pour le complement d'adresse (Le remplir ou non) If ThisWorkbook.Worksheets("JIRA").Range("O" & n) = 0 Then wordDoc.Fields(8).Result.Text = "" Else wordDoc.Fields(8).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("O" & n) End If
'Sauvegarde du Document (Chemin à modifier en fonction du lieu souhaité). Ici au même endroit que le model. 'Une fois en Word et une fois en PDF (tu peux ajouter ' devant le word si c'est inutile ou supprimer la ligne).
If ThisWorkbook.Worksheets("JIRA").Range("O" & n) = 0 Then wordDoc.Fields(8).Result.Text = "" Else wordDoc.Fields(8).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("O" & n) End If
j'ai tendance (un peu plus que "tendance") à penser que tu pilotes World à partir de VBA/Excel et non (le sous-forum dans lequel tu as ouvert cette discussion) à partir de VB.Net !
Qu'en est-il donc ?
EDIT : et tu as (bien sûr) omis de dire sur quelle ligne de code cela "butait" (encore que ... nous pouvons deviner ... mais ne sommes pas là pour "deviner" ...)!
________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018209 30 mai 2016 à 20:01
1) discussion donc déplacée vers le sous-forum( VBA) où elle aurait dû être ouverte. Prends s'il te plait dorénavant ce soin. VBA n'est pas VB.Net.
2) Je me doutais bien, qu'il s'agissait de cette ligne.
A quoi te réfères-tu, par "ActiveDocuemt" ? A préciser dans ton code par son objet d'appartenance.
Cette ligne me permet d'exporter au format pdf le word qui a été modifier.
et donc ===>> préciser que cet ActiveDocument appartient à l'objet Word créé !
Ne me dis pas que tu ne sais pas comment le faire, car cela voudrait dire que tu as copié/collé ce code, sans rien y comprendre ! (tu es ici sur un forum de développeurs, ce que tu es censé être).
J'observe qu'à la ligne suivante, l'objet Word créé a bien été précisé, lui (copié/collé ?).
EDIT : sans compter que tu as, par cette ligne, défini un objet :
Set wordDoc = wordApp.Documents.Open("C:\Users\E1561\Desktop\Modèle_Attestation_EASY_BOURSE.docm ")
, non ?
Et c'est CET objet, qui a été modifié, non ?
et tu as précisé ...
Cette ligne me permet d'exporter au format pdf le word qui a été modifier.
non ?
Alors ? On fait quoi ?
________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.