Cet article illustre la procédure permettant d'automatiser Word à l'aide de Visual Basic .NET afin de récupérer et de manipuler les propriétés des documents. Bien que l'exemple fourni dans cet article ait été écrit spécifiquement pour automatiser Word, les mêmes principes peuvent être appliqués à Excel et PowerPoint.
Création d'un client Automation pour Microsoft Word
- Démarrez Visual Studio .NET. Dans le menu Fichier, cliquez sur Nouveau, puis sur Projet. Sélectionnez Application Windows dans les types de projets Visual Basic. Form1 est créé par défaut.
- Ajoutez une référence à la Bibliothèque d'objets Microsoft Word. Pour ce faire, procédez comme suit :
- Dans le menu Projet, cliquez sur Ajouter une référence.
- Sous l'onglet COM, recherchez Microsoft Word X.0 Object Library, puis cliquez sur Sélectionner.
REMARQUE : la bibliothèque d'objets Microsoft Word contient un numéro de version (9.0 pour Word 2000 et 10.0 pour Word 2002). - Cliquez sur OK dans la boîte de dialogue Ajouter une référence pour accepter vos sélections. Si vous recevez une invite pour générer des wrappers pour les bibliothèques sélectionnées, cliquez sur Oui.
- Dans le menu Affichage, sélectionnez Boîte à outils pour afficher la boîte à outils et ajoutez un bouton à Form1.
- Double-cliquez sur Button1. La fenêtre de code du formulaire s'affiche.
- Dans la fenêtre de code, remplacez le code suivant
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles Button1.Click
End Sub par : Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles Button1.Click
Dim oWord As Word.Application
Dim oDoc As Word.Document
Dim oBuiltInProps As Object
Dim oCustomProps As Object
Dim oProp As Object
Dim strValue As String
'Créer une instance de Word visible.
oWord = CreateObject("Word.Application")
oWord.Visible = True
'Créer un nouveau document
oDoc = oWord.Documents.Add()
'Obtenir la collection des propriétés de document intégrées.
oBuiltInProps = oDoc.BuiltInDocumentProperties
'Obtenir la valeur de la propriété Auteur et l'afficher
strValue = oBuiltInProps.Item("Author").Value
MsgBox("L'auteur de ce document est " & strValue)
'Définir la valeur de la propriété Objet.
oBuiltInProps.Item("Subject").Value = _
"Article de la Base de connaissances Q303294"
'Obtenir la collection des propriétés de document personnalisées.
oCustomProps = oDoc.CustomDocumentProperties
'Ajouter une propriété nommée Article de la Base de connaissances
'et lui donner la valeur Q303294.
oCustomProps.Add("Article de la Base de connaissances", False, _
Office.MsoDocProperties.msoPropertyTypeString, "Q303294")
'Afficher une boîte de message pour permettre à l'utilisateur de vérifier les
'propriétés.
MsgBox("Sélectionnez Propriétés dans le menu Fichier " _
& "pour afficher les modifications." & Chr(10) _
& "Sélectionnez l'onglet Résumé pour afficher " _
& "l'objet et l'onglet Personnalisation pour afficher les propriétés " _
& "personnalisées.", MsgBoxStyle.Information, _
"Vérifiez les propriétés du fichier")
'Nettoyer. Laisser Word poursuivre son exécution.
oCustomProps = Nothing
oBuiltInProps = Nothing
oDoc = Nothing
oWord = Nothing
End Sub - par : Si vous avez référencé la bibliothèque d'objets Word 2002, ajoutez la ligne suivante au début de la fenêtre de code :
Imports Office=Microsoft.Office.Core 'Requis pour Word 2002, mais pas pour Word 2000
- par : Appuyez sur F5 pour exécuter l'application.
- par : Cliquez sur Button1 pour démarrer Word.
Ce code illustre la lecture et l'écriture de propriétés de document intégrées et personnalisées. Lorsqu'il est exécuté, il affiche la valeur de la propriété intégrée
Auteur, remplace la valeur de la propriété
Objet par "Article de la Base de connaissances Q303294" et crée une nouvelle propriété de document personnalisée nommée "Article de la Base de connaissances". Lorsque vous êtes invité à afficher les modifications, basculez dans Word et cliquez sur
Propriétés dans le menu
Fichier.
Pour plus d'informations, visitez le site Web de MSDN (Microsoft Developer Network) à l'adresse suivante :
Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
303296
(http://support.microsoft.com/kb/303296/
)
PROCÉDURE : Utiliser Automation pour obtenir et définir les propriétés de documents Office à l'aide de Visual C# .NET
Numéro d'article: 303294 - Dernière mise à jour: mercredi 17 janvier 2007 - Version: 4.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
- Microsoft Visual Basic .NET 2002 Initiation
- Microsoft Excel 2000 Standard
- Microsoft Excel 2002
- Microsoft PowerPoint 2000 Standard
- Microsoft PowerPoint 2002 Standard
- Microsoft Word 2000 Standard Edition
- Microsoft Word 2002 Standard Edition
| _ik11561 kbautomation kbexcel kbgrpdso kbhowto kbword KB303294 |
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.