Tu as sa méthode voisine pour sélectionner par le Tag https://learn.microsoft.com/fr-fr/of...tcontrolsbytag
Après tu doit pouvoir le tout sur une seule ligne si le nom est unique (et donc SelectContentControlByTitle ne renvoie qu'une liste d'un élément)
doc.SelectContentControlsByTitle("toto")[1].Checked = true;
Tu peux aussi faire par boucle
1 2 3 4 5 6 7 8 9 10 11
| string[] cc_to_check={"toto1", "toto2";"toto4"};
foreach(string titre in cc_to_check){ // coche les cases listées sans modifier les autres
doc.SelectContentControlsByTitle(titre)[1].Checked = true;
}
foreach(Word.ContentControl cc in doc.ContentControls){ // parcours les controles et coche uniquement les cases définies en décochant les autres
if(cc.Title in cc_to_check){
cc.Checked = true;
}else{
cc.checked=false;
}
} |
Edit: il y a probablement un test à rajouter pour vérifier que le controle est bien une case à cocher.
Partager