Case à cocher

Le
jepac
Bonjour,

Je souhaiterais, à l'aide d'une macro, remplacer toutes les cases à cocher
de formulaire qui sont cochées par un X et piur celles qui sont décochées
simplement les supprimer.

J'ai écris la macro suivante - qui ne fonctionne pas :

Dim CaseACocher As FormField
For Each CaseACocher In ActiveDocument.FormFields
If CaseACocher.Result = True Then
Selection.Delete
Selection.TypeText Text:="X"
Else
Selection.Delete
End If
Next

Pouvez-vous m'aider ?

Merci
Jean-Paul
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Anacoluthe
Le #1755267
Bonjour !

'jepac' nous a écrit ...
Je souhaiterais, à l'aide d'une macro, remplacer toutes les cases à cocher
de formulaire qui sont cochées par un X et piur celles qui sont décochées
simplement les supprimer.
J'ai écris la macro suivante - qui ne fonctionne pas :


Ben oui :-( vous ne testez pas si le champ est une case à cocher, vous
confondez Result et Value, vous ne sélectionnez pas le champ dans la
boucle d'itération mais vous utilisez quand même l'objet Selection ?
Beaucoup d'erreurs pour une micro-macro ! Consultez les classiques :
http://www.microapp.com/livre_vba_office_2007_9245.html

Sub Supprime_CasesAcocher()
Dim FF As FormField
For Each FF In ActiveDocument.FormFields
If FF.Type = wdFieldFormCheckBox Then
If FF.CheckBox.Value = True Then
FF.Range.Text = "[x]"
Else
FF.Range.Text = "[_]"
End If
End If
Next FF
End Sub

Anacoluthe
« Notre cerveau est comme un petit village d'Afrique victime
de l'exode rural ; il y a des cases vides. »
- Jonathan MUCHEMBLÉ

jepac
Le #1755266
Bonjour,

Merci pour votre aide.

Chacune de vos réponses permet de repeupler ma p'tite cevelle.

Cordialement.
Jean-Paul


Bonjour !

'jepac' nous a écrit ...
Je souhaiterais, à l'aide d'une macro, remplacer toutes les cases à cocher
de formulaire qui sont cochées par un X et piur celles qui sont décochées
simplement les supprimer.
J'ai écris la macro suivante - qui ne fonctionne pas :


Ben oui :-( vous ne testez pas si le champ est une case à cocher, vous
confondez Result et Value, vous ne sélectionnez pas le champ dans la
boucle d'itération mais vous utilisez quand même l'objet Selection ?
Beaucoup d'erreurs pour une micro-macro ! Consultez les classiques :
http://www.microapp.com/livre_vba_office_2007_9245.html

Sub Supprime_CasesAcocher()
Dim FF As FormField
For Each FF In ActiveDocument.FormFields
If FF.Type = wdFieldFormCheckBox Then
If FF.CheckBox.Value = True Then
FF.Range.Text = "[x]"
Else
FF.Range.Text = "[_]"
End If
End If
Next FF
End Sub

Anacoluthe
« Notre cerveau est comme un petit village d'Afrique victime
de l'exode rural ; il y a des cases vides. »
- Jonathan MUCHEMBLÉ




jepac
Le #1755265
J'ai essayé votre macro mais j'ai l'erreur suivante :

"Cette commande n'est pas disponible" au niveau de "If FF.CheckBox.Value =
True Then"

Merci
Jean-Paul


Bonjour !

'jepac' nous a écrit ...
Je souhaiterais, à l'aide d'une macro, remplacer toutes les cases à cocher
de formulaire qui sont cochées par un X et piur celles qui sont décochées
simplement les supprimer.
J'ai écris la macro suivante - qui ne fonctionne pas :


Ben oui :-( vous ne testez pas si le champ est une case à cocher, vous
confondez Result et Value, vous ne sélectionnez pas le champ dans la
boucle d'itération mais vous utilisez quand même l'objet Selection ?
Beaucoup d'erreurs pour une micro-macro ! Consultez les classiques :
http://www.microapp.com/livre_vba_office_2007_9245.html

Sub Supprime_CasesAcocher()
Dim FF As FormField
For Each FF In ActiveDocument.FormFields
If FF.Type = wdFieldFormCheckBox Then
If FF.CheckBox.Value = True Then
FF.Range.Text = "[x]"
Else
FF.Range.Text = "[_]"
End If
End If
Next FF
End Sub

Anacoluthe
« Notre cerveau est comme un petit village d'Afrique victime
de l'exode rural ; il y a des cases vides. »
- Jonathan MUCHEMBLÉ




Anacoluthe
Le #1755084
Bonjour !

'jepac' nous a écrit ...
"Cette commande n'est pas disponible" au niveau de "If FF.CheckBox.Value =
True Then"


Quelle version Word ?? Chez moi pas de problème !

Si Checkbox ou Value n'existent pas dans votre version, utilisez FF.Result
mais avec 1 ou 0 comme valeurs et non True ou False

Anacoluthe
« Notre cerveau est comme un petit village d'Afrique victime
de l'exode rural ; il y a des cases vides. »
- Jonathan MUCHEMBLÉ

jepac
Le #1755083
Maintenant cela fonctionne !

Merci encore

J'ai acheté le livre VBA pour office 2007 (la bible) pour essayer de m'en
sortir tout seul, mais je n'ai pas encore tout bien assimilé....loin de là
même

Jean-Paul


Bonjour !

'jepac' nous a écrit ...
"Cette commande n'est pas disponible" au niveau de "If FF.CheckBox.Value =
True Then"


Quelle version Word ?? Chez moi pas de problème !

Si Checkbox ou Value n'existent pas dans votre version, utilisez FF.Result
mais avec 1 ou 0 comme valeurs et non True ou False

Anacoluthe
« Notre cerveau est comme un petit village d'Afrique victime
de l'exode rural ; il y a des cases vides. »
- Jonathan MUCHEMBLÉ





Publicité
Poster une réponse
Anonyme