Problème avec Word

Signaler
Messages postés
24
Date d'inscription
vendredi 10 mai 2002
Statut
Membre
Dernière intervention
13 avril 2003
-
Messages postés
45
Date d'inscription
lundi 23 juin 2003
Statut
Membre
Dernière intervention
24 février 2009
-
Bonjour,

J'ai un gros soucis avec word. J'ai fait une application qui ouvre un document word et qui assigne aux signets présents dans le document word des chaines de caractères. Lors de la première exécution, il n'y a pas de problème. Maintenant si je ne ferme par Word, pas de problème non plus, mais si je ferme Word et que j'essaye de recréer un document Word de la même manière, il me plante une erreur lorsqu'il arrive au niveau des signets. Par contre si je ferme le logiciel et que je tente de faire un document Word là ça marche de nouveau. Donc il faudrait que je puisse empêcher la fermeture de Word quand il est ouvert depuis mon logiciel. J'ai aussi essayé de créer une application Word à chaque fois, mais là j'ai un problème de fichier en Lecture seule ... J'utilise le code suivant que j'ai trouvé sur le site vbfrance.com :

------
' Création du nom de fichier d'enregistrement
NomFicEnregistrement = App.Path & "\Courrier"
Nombre = Len(Référence)
For i = 1 To Nombre
If Mid$(Référence, i, 2) = "/ " Then
NomFicEnregistrement = NomFicEnregistrement
Else
NomFicEnregistrement = NomFicEnregistrement & Mid$(Référence, i, 1)
End If
Next
NomFicEnregistrement = NomFicEnregistrement & ".doc"
If Dir(App.Path & "\Courrier") = "" Then
MkDir App.Path & "\Courrier\ "
End If
' Vérification de l'existance du fichier vierge
NomFicComplet = App.Path & "\Courrier.doc"

If Dir(NomFicComplet) = "" Then
MsgBox "Ce fichier n'est pas disponible !", vbOKOnly + vbExclamation
Exit Sub
End If

'Ouverture d'un document Word
On Error Resume Next
Set WW = GetObject(, "word.application")
If Err.Number <> 0 Then
On Error GoTo 0
On Error Resume Next
Set WW = CreateObject("word.application")
If Err.Number <> 0 Then
MsgBox "Fichier non accessible avec cette version de Word !", vbExclamation
Exit Sub
End If
On Error GoTo 0
Else
On Error GoTo 0
'AppActivate WW.Caption
End If

' ouverture du document
' et en plein écran !
WW.Application.Documents.Open NomFicComplet

' recherche signet
Set MyDoc = WW.ActiveDocument
Signet = "Destinataire"
If MyDoc.Bookmarks.Exists(Signet) = True Then
MyDoc.Bookmarks(Signet).Select
Selection.TypeText Destinataire & Chr$(13) & AdresseDestinataire
End If

--------
il plante juste avant le End if

Merci
jayrock

2 réponses

Messages postés
33
Date d'inscription
jeudi 18 avril 2002
Statut
Membre
Dernière intervention
17 mai 2004

Bonjour,

Si les champs à remplir sont des zones de textes crées avec la barre d'outils 'Formulaire', tu peux essayer :

MyDoc.FormFields(Signet).Result = Destinataire & Chr$(13) & AdresseDestinataire

cmusy
0
Messages postés
45
Date d'inscription
lundi 23 juin 2003
Statut
Membre
Dernière intervention
24 février 2009

Bonjour,

As-tu essayé ceci ?
Car moi je n'ai pas de problème.

Set MyDoc = WW.ActiveDocument
Signet = "Destinataire"
If MyDoc.Bookmarks.Exists(Signet) = True Then
MyDoc.Bookmarks(Signet).Select
MyDoc.Selection.TypeText Destinataire & Chr$(13) & AdresseDestinataire
End If

DH
0