2017-07-27 1 views
0

J'utilise VBA pour MS Word. J'ai créé un macrofile (DOCM) pour créer un nouveau mot-document à l'aide documents.add ....mot vba: documents.add: mettre ce nouveau document au-dessus

Je veux passer de ma macro-document à mon nouveau document créé à l'écran:

Sub test() 
    Dim MacroDocument As Document 
    Set MacroDocument = ActiveDocument 
    Dim newDocument As Document 
    Set newDocument = Documents.Add 

    'try to show my macroDocument on the windows screen, 
    MacroDocument.Select 
    stop 
    ' now to the new document 
    newDocument.Select 

End Sub 

Pourquoi ça ne marche pas?

Des idées?

+0

Bienvenue dans Stack Overflow! Pouvez-vous élaborer sur la façon dont votre code "ne fonctionne pas"? Qu'attendiez-vous et qu'est-ce qui s'est réellement passé? Si vous avez une exception/erreur, postez la ligne sur laquelle elle s'est produite et les détails d'exception/d'erreur. S'il vous plaît [modifier] ces détails dans ou nous ne pouvons pas être en mesure d'aider. –

Répondre

0

document.Select sélectionne simplement le document mais ne l'affiche pas. À la place, utilisez MacroDocument.Activate et newDocumente.Activate.

0

Lorsque vous ajoutez un document, le nouveau document devient automatiquement le document actif et remplace le document en cours sur votre écran. Par conséquent, dans la plupart des cas, la tâche n'est pas de le montrer, mais de garder le précédent en tête. Dans ce cas, rendre le nouveau document invisible est l'une des options que vous pourriez envisager. Set NewDocument = Documents.Add(Visible:=False)