Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

nom de la sopurce de données dans un champ ?

3 réponses
Avatar
Christophe
Bonjour,

Dans un document de publipostage, est-il possible de récupérer le nom de la
source de données dans un champ pour l'afficher ?

Merci pour votre aide !

3 réponses

Avatar
Dom
Bonjour,

Dans la mesure où il n'y a pas de champ ni de propriété Source de données,
il faut la créer. Une solution :

1/ Dans le menu Fichier > Propriétés > Onglet [Personnalisation], crée une
propriété nommée MaSource, de type Texte, avec une chaîne vide ("") comme
valeur

2/ Copie la macro suivante :
Sub SourceDonnees()
Dim Source
Source = ActiveDocument.MailMerge.DataSource.Name
ActiveDocument.CustomDocumentProperties("MaSource") = Source
End Sub

3/ A l'endroit où tu veux placer le champ source, tape le code
{ DOCPROPERTY MaSource }
Ctrl F9 pour avoir les { }.

4/Exécute ta macro par Alt F8.

A améliorer en automatisant par exemple l'exécution de la macro.

Dom



Bonjour,

Dans un document de publipostage, est-il possible de récupérer le nom de la
source de données dans un champ pour l'afficher ?

Merci pour votre aide !




Avatar
Christophe
à la correction de syntaxe près, c'est exactement ce qu'il me fallait.

Merci beaucoup !

Remplacer
ActiveDocument.CustomDocumentProperties("MaSource") = Source
par

ActiveDocument.CustomDocumentProperties.Add _
Name:="MaSource", LinkToContent:úlse, Value:=Source, _
Type:=msoPropertyTypeString


Bonjour,

Dans la mesure où il n'y a pas de champ ni de propriété Source de données,
il faut la créer. Une solution :

1/ Dans le menu Fichier > Propriétés > Onglet [Personnalisation], crée une
propriété nommée MaSource, de type Texte, avec une chaîne vide ("") comme
valeur

2/ Copie la macro suivante :
Sub SourceDonnees()
Dim Source
Source = ActiveDocument.MailMerge.DataSource.Name
ActiveDocument.CustomDocumentProperties("MaSource") = Source
End Sub

3/ A l'endroit où tu veux placer le champ source, tape le code
{ DOCPROPERTY MaSource }
Ctrl F9 pour avoir les { }.

4/Exécute ta macro par Alt F8.

A améliorer en automatisant par exemple l'exécution de la macro.

Dom



Avatar
Dom
En effet, cela t'évite de pré-créer la propriété MaSource.
Mais attention de gérer l'erreur s'il y a un risque d'exécuter la macro plus
d'une fois.

Bonne poursuite,

Dom



à la correction de syntaxe près, c'est exactement ce qu'il me fallait.

Merci beaucoup !

Remplacer
ActiveDocument.CustomDocumentProperties("MaSource") = Source
par

ActiveDocument.CustomDocumentProperties.Add _
Name:="MaSource", LinkToContent:úlse, Value:=Source, _
Type:=msoPropertyTypeString


Bonjour,

Dans la mesure où il n'y a pas de champ ni de propriété Source de données,
il faut la créer. Une solution :

1/ Dans le menu Fichier > Propriétés > Onglet [Personnalisation], crée une
propriété nommée MaSource, de type Texte, avec une chaîne vide ("") comme
valeur

2/ Copie la macro suivante :
Sub SourceDonnees()
Dim Source
Source = ActiveDocument.MailMerge.DataSource.Name
ActiveDocument.CustomDocumentProperties("MaSource") = Source
End Sub

3/ A l'endroit où tu veux placer le champ source, tape le code
{ DOCPROPERTY MaSource }
Ctrl F9 pour avoir les { }.

4/Exécute ta macro par Alt F8.

A améliorer en automatisant par exemple l'exécution de la macro.

Dom