Partager via


Méthode MailMerge.OpenDataSource (Publisher)

Associe une source de données à la composition spécifiée, qui devient alors un document principal si ce n’était pas encore le cas.

Syntaxe

expression. OpenDataSource (bstrDataSource, bstrConnect, bstrTable, fOpenExclusive, fNeverPrompt)

Expression Variable qui représente un objet MailMerge .

Parameters

Nom Requis/Facultatif Type de données Description
bstrDataSource Facultatif Chaîne Chemin d’accès et nom de fichier de la source de données. Vous pouvez spécifier un fichier Microsoft Query (.qry) au lieu de spécifier une source de données, une chaîne de connexion et une chaîne de nom de table . les valeurs d’un fichier Microsoft Query remplacent les valeurs de bstrConnect et bstrTable.
bstrConnect Facultatif Chaîne Chaîne de connexion.
bstrTable Facultatif Chaîne Nom de la table dans la source de données.
fOpenExclusive Facultatif Entier long True pour refuser aux autres l'accès à la base de données. False pour leur accorder l'autorisation à la base de données de lecture/écriture. La valeur par défaut est False.
fNeverPrompt Facultatif Long True n'affiche rien lors de l'ouverture de la source de données. False affiche la boîte de dialogue Propriétés de la liaison de données . La valeur par défaut est False.

Remarques

[!REMARQUE] Si vous utilisez une source de données de fusion et publipostage, vous devez ajouter une zone de fusion de catalogue à la page de composition avant d'attacher à la source de données.

Exemple

Cet exemple attache une table à partir d’une base de données et refuse aux autres utilisateurs l’accès en écriture à la base de données lorsqu’elle est ouverte.

Pour que cet exemple s’exécute correctement, vous devez remplacer par PathToFile un chemin de fichier valide et TableName par un nom de table de source de données valide.

Sub AttachDataSource() 
 
    ActiveDocument.MailMerge.OpenDataSource _ 
        bstrDataSource:="PathToFile", _ 
        bstrTable:="TableName", _ 
        fNeverPrompt:=True, fOpenExclusive:=True 
 
End Sub

Remarque

Pour TableName, si une feuille de calcul Excel est ouverte, TableName doit être suivi de $. Autrement dit, bstrTable:="Sheet1" ne fonctionnera pas; bstrTable:="Sheet1$" fonctionnera. Voici un exemple qui clarifie ce point.

Dans cet exemple, les données sont stockées dans MySpreadSheet.xlsx, Sheet1, dans le même répertoire que le fichier Publisher.

Dim strDataFile as String
strDataFile = Application.ActiveDocument.Path & "MySpreadSheet.xlsx"

ActiveDocument.MailMerge.OpenDataSource _ 
    bstrDataSource:=strDataFile, _ 
    bstrTable:="Sheet1$", _ 
    fNeverPrompt:=True, fOpenExclusive:=True 

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.