2016-02-22 4 views
0

Je cours actuellement une macro VBA dans Word. Une partie de cela nécessite la création d'un nouveau document vierge pour exécuter une partie du travail. En ce moment, j'ai juste Documents.Add DocumentType:=wdNewBlankDocument que je me réfère ensuite à Windows("Document1").Activate. Cependant, le problème est que si je veux exécuter la macro plus d'une fois, cela ne fonctionnera pas car à chaque fois qu'elle créera un nouveau document vierge, elle deviendra "Document2/3 ... etc". J'ai fondamentalement besoin d'assigner un document vierge à une variable pour que je puisse l'appeler de façon fiable. Je sais comment faire avec les documents déjà enregistrés (ceux qui ont un nom de fichier/chemin de fichier), mais je ne sais pas ce qu'il faudrait pour un document nouveau/vide.Affectation d'un nouveau document Word à une variable

Je travaille actuellement dans Word 2007.

+0

Que faire si votre appel à Documents.Add DocumentType: = wdNewBlankDocument pourrait renvoyer un objet? –

Répondre

1

Absolument aucun problème:

Dim oDoc as Word.Document 
Set oDoc = Documents.Add(DocumentType:=wdNewBlankDocument) 
+0

Vous avez besoin de parenthèses autour des arguments de 'Documents.Add' si vous souhaitez renvoyer une valeur et la stocker dans une variable. –

+0

Oui, merci @PatrickWynne. –

+0

Ah merci. J'avais ma variable oDoc sous forme de chaîne, puisque je la transmettais dans Documents.Open (oDoc). –