Erreur 442 lors d'un second test [Résolu]

- 30 mai 2016 à 17:45 - Dernière réponse :  lraffege
- 31 mai 2016 à 16:26
Bonjour,

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

'Remplissage des champs
wordDoc.Fields(1).Result.Text = Format(ThisWorkbook.Worksheets("JIRA").Range("F" & n), "dddd d mmmm yyyy")
wordDoc.Fields(2).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("H" & n)
wordDoc.Fields(3).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("I" & n)
wordDoc.Fields(4).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("J" & n)
wordDoc.Fields(5).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("D" & n)
wordDoc.Fields(6).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("E" & n)
wordDoc.Fields(7).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("N" & n)

'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

wordDoc.Fields(9).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("P" & n)
wordDoc.Fields(10).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("Q" & n)
wordDoc.Fields(11).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("C" & n)
wordDoc.Fields(12).Result.Text = ThisWorkbook.Worksheets("JIRA").Range("L" & n)

'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).

wordDoc.SaveAs Filename:=("V:\paris\DEPT_BACK_OFF\_Seno01\OST\08 - Assemblées Générales\AG_2016\Attestation à reclasser") & "\" & "Attestation de participation EASY BOURSE -" & ThisWorkbook.Worksheets("JIRA").Range("D" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("E" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("C" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("N" & n) & ".doc"

ActiveDocument.ExportAsFixedFormat outputFileName:=ActiveDocument.Path & "\" & "Attestation de participation EASY BOURSE -" & ThisWorkbook.Worksheets("JIRA").Range("D" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("E" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("C" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("N" & n) & ".pdf", exportFormat:=wdExportFormatPDF

wordApp.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
'wordDoc.Close
wordApp.Quit
Set wordDoc = Nothing
Set wordApp = Nothing

Else
MsgBox ("Le numéro de ligne n'est pas valide.")
End If

End Sub


cordialement
Afficher la suite 

Votre réponse

6 réponses

Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- Modifié par ucfoutu le 30/05/2016 à 18:50
0
Merci
Bonjour,
Lorsque je lis ces lignes de code :
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.
Commenter la réponse de ucfoutu
0
Merci
Effectivement je pilote word a partir d'excel. Cela bloque sur la ligne 45 :


ActiveDocument.ExportAsFixedFormat outputFileName:=ActiveDocument.Path & "\" & "Attestation de participation EASY BOURSE -" & ThisWorkbook.Worksheets("JIRA").Range("D" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("E" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("C" & n) & " " & ThisWorkbook.Worksheets("JIRA").Range("N" & n) & ".pdf", exportFormat:=wdExportFormatPDF
Commenter la réponse de lraffege
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- 30 mai 2016 à 20:01
0
Merci
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.
Commenter la réponse de ucfoutu
0
Merci
D'acc merci. A vrai dire je ne sais pas trop, je m'y connais pas très bien. Cette ligne me permet d'exporter au format pdf le word qui a été modifier.
Commenter la réponse de lraffege
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- Modifié par ucfoutu le 31/05/2016 à 06:37
0
Merci
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.
Commenter la réponse de ucfoutu
0
Merci
Ok merci je viens de trouver la solution.


wordApp.ActiveDocument.ExportAsFixedFormat outputFileName:=...


il fallait que je précise que s’était mon document word modifié que je devais exporter au format PDF.

je te remercie
Commenter la réponse de lraffege

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.