Méthode MailMerge.OpenDataSource (Word)

Associe une source de données au document spécifié, lequel devient alors un document principal s'il ne l'est pas déjà.

Syntaxe

expression. OpenDataSource( _Name_ , _Format_ , _ConfirmConversions_ , _ReadOnly_ , _LinkToSource_ , _AddToRecentFiles_ , _PasswordDocument_ , _PasswordTemplate_ , _Revert_ , _WritePasswordDocument_ , _WritePasswordTemplate_ , _Connection_ , _SQLStatement_ , _SQLStatement1_ , _OpenExclusive_ , _SubType_ )

expression Obligatoire. Variable qui représente un objet « MailMerge ».

Parameters

Nom Requis/Facultatif Type de données Description
Name Obligatoire String Nom de fichier de la source de données. Vous pouvez spécifier un fichier Microsoft Query (.qry) à la place d'une source de données, d'une chaîne de connexion et d'une chaîne de requête.
Format Facultatif Variant Le convertisseur de fichier utilisé pour ouvrir le document. Il peut s’agir d’une des constantes WdOpenFormat. Pour spécifier un format de fichier externe, appliquez la propriété OpenFormat à un objet FileConverter afin de connaître la valeur à affecter à cet argument.
ConfirmConversions Facultatif Variant True: pour afficher la boîte de dialogue Convertir si le fichier n'est pas au format Microsoft Word.
ReadOnly Facultatif Variant True: pour ouvrir la source de données en lecture seule.
LinkToSource Facultatif Variant True pour effectuer la requête spécifiée par Connection et SQLStatement à chaque ouverture du document principal.
AddToRecentFiles Facultatif Variant True pour ajouter le nom de fichier à la liste des fichiers récemment utilisés en bas du menu Fichier.
PasswordDocument Facultatif Variant Mot de passe à spécifier pour ouvrir la source de données. (Voir les remarques ci-dessous.)
PasswordTemplate Facultatif Variant Mot de passe à spécifier pour ouvrir le modèle. (Voir les remarques ci-dessous.)
Revert Facultatif Variant Contrôle que se passe-t-il si le nom est le nom de fichier d'un document ouvert. True : pour ignorer les modifications apportées au document ouvert depuis son dernier enregistrement et rouvrir le fichier, False : pour activer le document ouvert.
WritePasswordDocument Facultatif Variant Mot de passe à spécifier pour enregistrer les modifications apportées au document. (Voir les remarques ci-dessous.)
WritePasswordTemplate Facultatif Variant Mot de passe à spécifier pour enregistrer les modifications apportées au modèle. (Voir les remarques ci-dessous.)
Connection Facultatif Variant Plage dans laquelle la requête spécifiée par SQLStatement doit être exécutée. (Voir les remarques ci-dessous.)
SQLStatement Facultatif Variant Définit les options de la requête à utiliser pour extraire des données. (Voir les remarques ci-dessous.)
SQLStatement1 Facultatif Variant Si la chaîne de la requête dépasse 255 caractères, l'argument InstructionSQL en spécifie la première partie, et l'argument InstructionSQL1 la seconde. (Voir les remarques ci-dessous.)
OpenExclusive Facultatif Variant True: pour effectuer l'ouverture en mode exclusif.
SubType Facultatif Variant Il peut s’agir d’une des constantes WdMergeSubType.

Remarques

Pour déterminer les chaînes de connexion ODBC et de requête, définissez les options de la requête manuellement, puis utilisez la propriété QueryString pour renvoyer la chaîne de connexion. Le tableau suivant répertorie certains des mots clés SQL couramment utilisés.

Mot clé Description
DSN Nom de la source de données ODBC
UID Identificateur de connexion de l'utilisateur
PWD Mot de passe spécifié par l'utilisateur
DBQ Nom de fichier de la base de données
FIL Type de fichier

Pour indiquer à Word d’utiliser la même méthode de connexion que dans les versions antérieures de Word (Dynamic Data Exchange (DDE) pour les sources de données Microsoft Office Access et Microsoft Office Excel), utilisez SubType:=wdMergeSubTypeWord2000.

La manière dont vous pouvez spécifier la plage dépend du mode d'extraction des données. Par exemple :

  • Si vous utilisez ODBC (Open Database Connectivity) pour extraire les données, spécifiez une chaîne de connexion.

  • Si vous utilisez l'échange dynamique de données (DDE) pour extraire des données d'Excel, indiquez une plage nommée.

  • Si les données sont extraites d'Access, spécifiez le mot « Table » ou « Requête » suivi du nom d'une table ou d'une requête.

Importante

Évitez d’utiliser des mots de passe codés en dur dans vos applications. Si un mot de passe est requis dans une procédure, demandez-le à l’utilisateur, stockez-le dans une variable, puis utilisez la variable dans votre code. Pour connaître les meilleures pratiques recommandées sur la façon de procéder, consultez Notes de sécurité pour les développeurs de solutions Office.

Exemple

Cet exemple montre comment créer un document principal et lui associer la table « Orders » qui se trouve dans la base de données Access « Northwind.mdb ».

Dim docNew As Document 
 
Set docNew = Documents.Add 
 
With docNew.MailMerge 
 .MainDocumentType = wdFormLetters 
 .OpenDataSource _ 
 Name:="C:\Program Files\Microsoft Office" & _ 
 "\Office\Samples\Northwind.mdb", _ 
 LinkToSource:=True, AddToRecentFiles:=False, _ 
 Connection:="TABLE Orders" 
End With

Cet exemple crée un document principal et joint la feuille de calcul Excel nommée Names.xls. L'argument Connection permet de récupérer les données de la plage nommée « Sales ».

Dim docNew As Document 
 
Set docNew = Documents.Add 
 
With docNew.MailMerge 
 .MainDocumentType = wdCatalog 
 .OpenDataSource Name:="C:\Documents\Names.xls", _ 
 ReadOnly:=True, _ 
 Connection:="Sales" 
End With

Cet exemple utilise ODBC pour joindre la base de données Access « Northwind.mdb » au document actif. L'argument SQLStatement sélectionne les enregistrements de la table Customers.

Dim strConnection As String 
 
With ActiveDocument.MailMerge 
 .MainDocumentType = wdFormLetters 
 strConnection = "DSN=MS Access Databases;" _ 
 & "DBQ=C:\Northwind.mdb;" _ 
 & "FIL=RedISAM;" 
 .OpenDataSource Name:="C:\NorthWind.mdb", _ 
 Connection:=strConnection, _ 
 SQLStatement:="SELECT * FROM Customers" 
End With

Voir aussi

Objet MailMerge

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.