Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/05/2006, 10h24   #1
Nouveau Membre du Club
 
Inscription : mars 2004
Messages : 66
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 66
Points : 34
Points : 34
Par défaut [VBA-W]Génération de plusieurs fichiers Word

Bonjour
Voilà, je fait un programme qui génère plusieurs fichier Word par une boucle. Le premier fichier se crée sans problème, mais dés que le deuxième commence se remplir, il génère une erreur au niveau des signets.
Sachant que je sauvegarde et ferme le premier fichier.
Donc l’erreur que j’ai est au niveau du signet et elle est la suivante :
Code :
Object variable or whith block variable not set
Si vous pouvez m’éclairer
ennamsaoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2006, 10h33   #2
Expert Confirmé
 
Avatar de khany
 
Inscription : octobre 2002
Messages : 2 063
Détails du profil
Informations personnelles :
Âge : 50

Informations forums :
Inscription : octobre 2002
Messages : 2 063
Points : 2 790
Points : 2 790
Il faut que tu fasse chaque fois référence à ton document actif dans ton appWord ! C'est un bug !

Donc, ty dois chaque fois commencer ton code par :

Code :
1
2
3
4
 
With MyWord
   .ActiveDocument.BookMarks
End With
__________________
avant de poster FAQ VB - Page sources VB - Cours VB

Mes tutoriels : VB - VB.NET et ASP.NET

N'oubliez pas Merci !
khany est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2006, 10h34   #3
Membre chevronné
 
Avatar de Catbull
 
Inscription : avril 2003
Messages : 542
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : avril 2003
Messages : 542
Points : 767
Points : 767
Ce message signifie qu'un des objets que tu utilises est mal initialisé. Quant à savoir lequel...
__________________
CatBull - Modérateur VB
Catbull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 09h59   #4
Nouveau Membre du Club
 
Inscription : mars 2004
Messages : 66
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 66
Points : 34
Points : 34
bonjour merci pour ton interet a mon probleme
cependant, j'ai essai le bout de code que tu ma donné mais sa ne marche pas !!

Citation:
Envoyé par khany
Code :
1
2
3
4
 
With MyWord
   .ActiveDocument.BookMarks
End With

je vous rappel le code que j'utilise , peut etre il vous aidera a mieux comprendre!
pour atteindre à un signet j'utilise :
Code :
Selection.GoTo what:=wdGoToBookmark, Name:="TBL_4711"
et à cet endroi je cree un tableau avec la commande :
Code :
1
2
Set tbl_MomTableau = wrd_DocWord.ActiveDocument.Tables.Add _
                     (Range:=Selection.Range, NumRows:=8, NumColumns:=2)
donc qd l'erreur n'ai au niveau du signet, elle est au niveau de "add" du tableau.
et je rappel aussi que l'erreur se produit tjr à la deuxieme creation du fichier!!
voila merci encore
j'espere que j'été assez claire !!
ennamsaoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 13h21   #5
Membre chevronné
 
Avatar de Catbull
 
Inscription : avril 2003
Messages : 542
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : avril 2003
Messages : 542
Points : 767
Points : 767
A priori trois objets peuvent être mise en cause dans ton problème :
  • wrd_DocWord
  • ActiveDocument
  • Selection
A toi de voir lequel de ces objets n'est plus défini au moment de l'exécution. Pour le savoir tu peux tout simplement utiliser un msgbox et tester une propriété relatif à ces objets (c'est en tout cas ce que je ferais).
__________________
CatBull - Modérateur VB
Catbull est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h00.


 
 
 
 
Partenaires

Hébergement Web