Bienvenue 

sur les faqs Word & PowerPoint

Une question ? Cliquez ici.

 Un exemple à télécharger ? Cliquez ici.

 

Word 365 : Vous saurez tout !

Auteur sur XinXii

Pour tout connaître sur Word

8,90 €

 

 

Soit un document avec une case à cocher et une zone zone de texte. Comment faire pour que le contenu de la zone de texte soit automatiquement dépendant de la case à cocher, selon si celle-ci est cochée ou pas ?

Une macro est nécessaire, car on ne peut pas, dans un champ, récupérer la valeur de la case à cocher.

Exemple : Insérez dans un document une case à cocher et une zone de texte de la barre d'outils Formulaire (ou des formulaires hérités pour les versions à partir de 2007).

Double-cliquez sur chacun des deux champs afin de relever le nom du signet. Vous pouvez modiifer ces noms si nécessaire. Dans mon exemple, j'ai mis Case1 pour le signet de la case à cocher et Texte1 pour le signet de la zone de texte.

Vous allez maintenant créer la macro suivante. Vous pouvez la mettre dans un module du document en question, ou dans ThisDocument.

Sub caseacocher()
'macro écrite par m@rina
Dim macase As CheckBox
Dim montexte As FormField

Set macase = ActiveDocument.FormFields("Case1").CheckBox
Set montexte = ActiveDocument.FormFields("Texte1")
If macase.Value = True Then
montexte.Result = "oui la case est cochée"
Else: montexte.Result = "Non la case n'est pas cochée"
End If
End Sub

 

Puis, de retour dans le document, double-cliquez sur la case à cocher, et choisissez la macro caseacocher dans la rubrique Exécuter la macro à la sortie.

Double-cliquez ensuite sur le champ Zone de texte, et décochez l'option Remplissage activé. En effet, cette zone de texte doit être automatique et son contenu dépend de la valeur de la case à cocher.

Il vous reste à protéger le formulaire et à tester. Lorsque vous "sortirez" de la case à cocher, la zone de texte sera mise à jour.

 

Statistiques

Aujourd'hui1503
Hier1383
Cette semaine1503
Ce mois34766
Total depuis 200410770174

48
visiteurs actuellement en ligne