J’ai un formulaire qui ne contient que des cases à cocher 32 au total qui
sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit
obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à
3 avec l’en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d’une
case est cochée ou qu’aucune case n’est cochée et donne un seul avertissement
si ce cas se retrouve dans n’importe quelle colonne du formulaire.
Par exemple :
Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou
la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d’avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case
Retouche0 n’est pas cochée et que d’autres le sont et ce, pour chaque
possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous
voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre aide
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de
l'une des quatre, de décocher les autres.
Sub CaseACocher()
Dim i as integer
for i = 2 to 4
ActiveDocument.FormFields(i).CheckBox.Value = False
next i
End Sub
Mais je pense que ton document va devenir très lourd.
L'utilisation de UserForm est plus oouple, on peut factoriser le code plus
facilement.
"Jocelyne" <Jocelyne@discussions.microsoft.com> a écrit dans le message de
news: FE3CFC90-4FA6-426B-98B4-7625EF5E8377@microsoft.com...
Bonjour à tous,
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui
sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit
obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0
à
3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une
case est cochée ou qu'aucune case n'est cochée et donne un seul
avertissement
si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple :
Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée
Ou
la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case
Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque
possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes.
Vous
voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre aide
Jocelyne
Jocelyne
Merci de votre suggestion mais je ne sais pas si la userform se prête à mon document. En fait, le document est un modèle de formulaire de 5 pages qui contient des macrobutton pour le remplir. Cependant, cette section de formulaire est faites avec des cases à cocher pour le remplissage étant donné que le résultat des cases à cocher doit créer une barre de progression. De plus, plusieurs parties du document une fois rempli sont reportées dans un autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre, je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps, on arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de l'une des quatre, de décocher les autres.
Sub CaseACocher() Dim i as integer for i = 2 to 4 ActiveDocument.FormFields(i).CheckBox.Value = False next i End Sub
Mais je pense que ton document va devenir très lourd. L'utilisation de UserForm est plus oouple, on peut factoriser le code plus facilement.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre aide
Jocelyne
Merci de votre suggestion mais je ne sais pas si la userform se prête à mon
document. En fait, le document est un modèle de formulaire de 5 pages qui
contient des macrobutton pour le remplir. Cependant, cette section de
formulaire est faites avec des cases à cocher pour le remplissage étant donné
que le résultat des cases à cocher doit créer une barre de progression. De
plus, plusieurs parties du document une fois rempli sont reportées dans un
autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre,
je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps, on
arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de
l'une des quatre, de décocher les autres.
Sub CaseACocher()
Dim i as integer
for i = 2 to 4
ActiveDocument.FormFields(i).CheckBox.Value = False
next i
End Sub
Mais je pense que ton document va devenir très lourd.
L'utilisation de UserForm est plus oouple, on peut factoriser le code plus
facilement.
"Jocelyne" <Jocelyne@discussions.microsoft.com> a écrit dans le message de
news: FE3CFC90-4FA6-426B-98B4-7625EF5E8377@microsoft.com...
Bonjour à tous,
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui
sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit
obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0
à
3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une
case est cochée ou qu'aucune case n'est cochée et donne un seul
avertissement
si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple :
Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée
Ou
la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case
Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque
possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes.
Vous
voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre suggestion mais je ne sais pas si la userform se prête à mon document. En fait, le document est un modèle de formulaire de 5 pages qui contient des macrobutton pour le remplir. Cependant, cette section de formulaire est faites avec des cases à cocher pour le remplissage étant donné que le résultat des cases à cocher doit créer une barre de progression. De plus, plusieurs parties du document une fois rempli sont reportées dans un autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre, je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps, on arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de l'une des quatre, de décocher les autres.
Sub CaseACocher() Dim i as integer for i = 2 to 4 ActiveDocument.FormFields(i).CheckBox.Value = False next i End Sub
Mais je pense que ton document va devenir très lourd. L'utilisation de UserForm est plus oouple, on peut factoriser le code plus facilement.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre aide
Jocelyne
heureux-oli
Pas facile de dire si c'est plus simple, il faut connaître la nature du document. Mais je pense que ce serait au moins plus convivial pour l'utilisateur, avec un UserForm, on peut utiliser des onglets si on a besoin de beaucoup de place, on peut faire appel à une autre UserForm,...
Merci de votre suggestion mais je ne sais pas si la userform se prête à mon document. En fait, le document est un modèle de formulaire de 5 pages qui contient des macrobutton pour le remplir. Cependant, cette section de formulaire est faites avec des cases à cocher pour le remplissage étant donné que le résultat des cases à cocher doit créer une barre de progression. De plus, plusieurs parties du document une fois rempli sont reportées dans un autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre, je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps, on arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de l'une des quatre, de décocher les autres.
Sub CaseACocher() Dim i as integer for i = 2 to 4 ActiveDocument.FormFields(i).CheckBox.Value = False next i End Sub
Mais je pense que ton document va devenir très lourd. L'utilisation de UserForm est plus oouple, on peut factoriser le code plus facilement.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Merci de votre aide
Jocelyne
Pas facile de dire si c'est plus simple, il faut connaître la nature du
document.
Mais je pense que ce serait au moins plus convivial pour l'utilisateur, avec
un UserForm, on peut utiliser des onglets si on a besoin de beaucoup de
place, on peut faire appel à une autre UserForm,...
"Jocelyne" <Jocelyne@discussions.microsoft.com> a écrit dans le message de
news: 620AEF97-8AA2-4E08-99F4-3B4B01F0D337@microsoft.com...
Merci de votre suggestion mais je ne sais pas si la userform se prête à
mon
document. En fait, le document est un modèle de formulaire de 5 pages qui
contient des macrobutton pour le remplir. Cependant, cette section de
formulaire est faites avec des cases à cocher pour le remplissage étant
donné
que le résultat des cases à cocher doit créer une barre de progression. De
plus, plusieurs parties du document une fois rempli sont reportées dans un
autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre,
je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps,
on
arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic
de
l'une des quatre, de décocher les autres.
Sub CaseACocher()
Dim i as integer
for i = 2 to 4
ActiveDocument.FormFields(i).CheckBox.Value = False
next i
End Sub
Mais je pense que ton document va devenir très lourd.
L'utilisation de UserForm est plus oouple, on peut factoriser le code
plus
facilement.
"Jocelyne" <Jocelyne@discussions.microsoft.com> a écrit dans le message
de
news: FE3CFC90-4FA6-426B-98B4-7625EF5E8377@microsoft.com...
Bonjour à tous,
J'ai un formulaire qui ne contient que des cases à cocher 32 au total
qui
sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit
obligatoirement être cochée. Les cases de chaque colonne sont nommées
de 0
à
3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus
d'une
case est cochée ou qu'aucune case n'est cochée et donne un seul
avertissement
si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple :
Si la case à cocher Retouche0 est cochée Et la case Retouche1 est
cochée
Ou
la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la
case
Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque
possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes.
Vous
voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.
Pas facile de dire si c'est plus simple, il faut connaître la nature du document. Mais je pense que ce serait au moins plus convivial pour l'utilisateur, avec un UserForm, on peut utiliser des onglets si on a besoin de beaucoup de place, on peut faire appel à une autre UserForm,...
Merci de votre suggestion mais je ne sais pas si la userform se prête à mon document. En fait, le document est un modèle de formulaire de 5 pages qui contient des macrobutton pour le remplir. Cependant, cette section de formulaire est faites avec des cases à cocher pour le remplissage étant donné que le résultat des cases à cocher doit créer une barre de progression. De plus, plusieurs parties du document une fois rempli sont reportées dans un autre modèle.
Si vous pensez que ce sera simplifié, je tenterai cette façon. Par contre, je dois vous dire que je suis à mes débuts dans VBA. Mais avec le temps, on arrive à tout.
Jocelyne
Salut,
Je ne vais répondre que pour une partie de ta question.
Pour être certain que seul une case à cocher le soit, il suffit sur clic de l'une des quatre, de décocher les autres.
Sub CaseACocher() Dim i as integer for i = 2 to 4 ActiveDocument.FormFields(i).CheckBox.Value = False next i End Sub
Mais je pense que ton document va devenir très lourd. L'utilisation de UserForm est plus oouple, on peut factoriser le code plus facilement.
J'ai un formulaire qui ne contient que des cases à cocher 32 au total qui sont réparties sur 8 colonnes. Dans chaque colonne, une seule case doit obligatoirement être cochée. Les cases de chaque colonne sont nommées de 0 à 3 avec l'en-tête de colonne.
Je voudrais faire une macro qui analyse, pour chaque colonne, si plus d'une case est cochée ou qu'aucune case n'est cochée et donne un seul avertissement si ce cas se retrouve dans n'importe quelle colonne du formulaire.
Par exemple : Si la case à cocher Retouche0 est cochée Et la case Retouche1 est cochée Ou la case Retouche2 est cochée Ou la case Retouche3 est cochée
Alors affiche le message d'avertissement
Ça fonctionne pour cette situation mais je dois aussi analyser si la case Retouche0 n'est pas cochée et que d'autres le sont et ce, pour chaque possibilité dans cette colonne uniquement.
De plus, cette même analyse doit se répéter pour les 7 autres colonnes. Vous voyez le portrait. Beaucoup de lignes de codes.
Existe-t-il une façon plus condensée de programmer cette analyse.