FAQ Word

FAQ WordConsultez toutes les FAQ
Nombre d'auteurs : 20, nombre de questions : 289, dernière mise à jour : 15 juin 2021
Sommaire→Documents→VBA- Comment ouvrir un document ?
- Comment créer un nouveau document Word ?
- Comment importer la totalité d'un document Word dans une feuille Excel ?
- Comment piloter un document Word déjà ouvert ?
- Peut on récupérer les propriétés du document (auteur, titre) ?
- Comment éviter la question "Voulez vous sauvegarder ..." ?
- Je ne trouve pas la propriété visible d'un document Word 97 ?
- Comment retrouver le chemin du fichier Normal.dot sur mon ordinateur ?
Trois méthodes sont utilisables Ouvrir un document existant
Set objDoc = Application.Documents.Open("c:\tutoriel\tuto.doc")Ouvrir un nouveau document (basé sur le modèle normal)
Set objDoc = Application.Documents.AddOuvrir un document basé sur un autre modèle
Set objDoc = Application.Documents.Add( _
Template:="C:\Program Files\Microsoft Office\Templates\Memos\Professional Memo.dot")Nécessite d'activer la référence "Microsoft Word xx.x Object Library".
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Set WordApp = CreateObject("Word.Application") '-- ouvre une session Word
WordApp.Visible = True
Set WordDoc = WordApp.Documents.Add '-- crée un nouveau document
WordDoc.SaveAs "C:\monDocument.doc" '-- enregistre le nouveau docNécessite d'activer la référence "Microsoft Word xx.x Object Library" :
Dim WordDoc As Word.Document
Dim WordApp As Word.Application
Dim Wb As Workbook
Set Wb = Workbooks.Add(1)
Set WordApp = New Word.Application
WordApp.Visible = False
Set WordDoc = WordApp.Documents.Open("monDocument.doc", ReadOnly:=True)
With WordApp
.Selection.WholeStory
.Selection.Copy
End With
Wb.ActiveSheet.Range("A1").Select
Wb.ActiveSheet.Paste
WordApp.Application.Quit
Application.CutCopyMode = False
Wb.SaveAs "C:\copieDocument.xls"
Nécessite d'activer la référence "Microsoft Word xx.x Object Library".
Pour piloter un document Word déjà ouvert , utilisez la fonction getObject :
Dim WordDoc As Word.Document
Set WordDoc = GetObject("monDocument.doc")
MsgBox WordDoc.Paragraphs.CountOn peut accéder aux propriétés par la collection BuiltInDocumentProperties de l'objet document
Dim objDoc As Word.Document, msg As String
Set objDoc = Application.Documents.Open("d:\tuto.doc")
msg = "Titre : " & objDoc.BuiltInDocumentProperties(wdPropertyTitle) & vbCrLf
msg = msg & "Auteur : " & objDoc.BuiltInDocumentProperties(wdPropertyAuthor) & vbCrLf
msg = msg & "Commentaire : " & objDoc.BuiltInDocumentProperties(wdPropertyComments) & vbCrLf
MsgBox msgDim objDoc As Word.Document, msg As String
Set objDoc = Application.Documents.Open("d:\tuto.doc")
msg = "Titre : " & objDoc.BuiltInDocumentProperties(wdPropertyTitle) & vbCrLf
msg = msg & "Auteur : " & objDoc.BuiltInDocumentProperties(wdPropertyAuthor) &a vbCrLf
msg = msg & "Commentaire : " & objDoc.BuiltInDocumentProperties(wdPropertyComments) & vbCrLf
MsgBox msg
Il arrive souvent que Word vous pose la question : "Voulez vous enregistrer les modifications apportées au .... ?"
Ce message survient parce que la variable
ActiveDocument.Savedse trouve avec une valeur False et dans ce cas, Word vous propose la sauvegarde. Si vous voulez éviter ce message, vous pouvez forcer cette valeur à True et ce message n'apparaîtra plus.
ActiveDocument.Saved = TrueEt si vous devez choisir une procédure pour l'intégrer
Private Sub Document_Close()
ActiveDocument.Saved = True
End SubC'est normal, elle n'existe pas. Pour gérer un document invisible dans word 97, on utilise :
Set objDoc = GetObject("d:\user\tuto.doc")
Comment retrouver le chemin du modèle normal.dot sur mon ordinateur.
Public Sub normalchemin()
'Affichage du chemin du Normal.dot
MsgBox Application.NormalTemplate.Path
End Sub


