MFC spéciale

Résolu/Fermé
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 - 16 nov. 2019 à 17:22
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 - 24 nov. 2019 à 11:55
Bonjour,
Dans le fichier ci-joint je cherche à mettre une MFC répondant à critères explications dans le fichier.
https://www.cjoint.com/c/IKqqvVoEBMh
Pas trouvé de solution
Merci pour votre aide



Configuration: Windows / Firefox 70.0

45 réponses

Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié le 16 nov. 2019 à 18:51
Bonsoir,
si on reprend ton fichier, ligne 2 tu as deux fois 1 que tu colorises et deux fois 2 dont tu n'en colorise qu'un et une fois 3 qui est supérieure que tu ne colorises pas ce qui n'est pas logique d'après ce que tu as écris
"Quelle MFC appliquer par ligne pour mettre en rouge la cellule qui contient un chiffre supérieur ,à 2 chiffres identiques présent dans cette même ligne." tu as deux fois 1 et deux fois 2 qui devraient être colorisées en bleu et en rouge la cellule contenant 3 en rouge parce que supérieure


1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
16 nov. 2019 à 19:07
Bonsoir Mike
Merci pour ta réponse
Les couleurs mises ne sont là que pour différencier les chiffres figurant dans la ligne.
Le but recherché a partir du moment ou 2 chiffres identiques sont dans une ligne on ne
peux plus mettre un chiffre de valeur supérieure
exemple dans la ligne 2 cellule F2 si je mets un 2 cette cellule doit se colorier en rouge
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
16 nov. 2019 à 20:52
Bonjour à vous deux

Par MFC je ne vois pas non plus
Par macro :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B2:H4")) Is Nothing Then
col = Target.Column
ligne = Target.Row
verif = False
For n = 2 To col - 1
a = Application.WorksheetFunction.CountIf(Range(Cells(ligne, 2), Cells(ligne, col - 1)), Cells(ligne, n))
If a > 1 And Target.Value > Cells(ligne, n) Then verif = True
Next
If verif = True Then Cells(ligne, col).Interior.Color = 255 Else Cells(ligne, col).Interior.Pattern = xlNone
End If
End Sub


Cdlmnt
Via
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
Modifié le 17 nov. 2019 à 10:21
Bonjour VIA
Merci pour ton aide
Je te renvois un nouveau fichier avec explications plus larges
Il y aura plusieurs lignes dans le tableau vu le nombre de joueurs
https://www.cjoint.com/c/IKrjqAX3hFh
J'espère que là tu vas comprendre ce que je souhaite,désolé si je me suis mal exprimé
Cordialement
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
17 nov. 2019 à 11:43
Bonjour JCB

Comme je te le disais précédemment la solution passe par une macro que je t'indiquais
https://mon-partage.fr/f/jXAXTBW0/

J'ai appliqué la macro à la feuille 1
En feuille 2 même type de macro mais qui au lieu de colorer en rouge empêche de rentrer la valeur non valide

Par contre si c'est pour répondre aux attentes de gigipong il parlait dans sa demande du cas supplémentaire des équipes féminine qui n'est pas pris en compte ici, mais il sera facile d'adapter le macro dans ce sens

Cdlmnt
Via
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
17 nov. 2019 à 11:54
Nos posts se sont croisés le code dans ton post 5 nickel exactement ce qu'il fallait
Merci encore
je vais surement revenir car je vais avoir des soucis avec les féminines.
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
17 nov. 2019 à 12:06
Normal le bug si on selectionne plusieurs cellules
Pour pallier cela rajoute avant le 1er IF cette ligne
If Target.Cells.Count > 1 Then Exit Sub


Pour les féminines quel est exactement les conditions à prendre en compte je n'ai pas trop compris l'histoire de 10 possible
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
Modifié le 17 nov. 2019 à 12:14
pour les féminines je vais monter un fichier après on verra comment le rendre opérationnel
Je reviens sur le fichier post 5 qui fonctionne bien ;j'ai un souci quand je renomme la feuille
"Brulage Masculin" le code ne fonctionne plus

J'ai trouvé et ça fonctionne
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DjiDji59430 Messages postés 4035 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 24 avril 2024 645
17 nov. 2019 à 12:42
Bonjour à tous,

en formule :
https://www.cjoint.com/c/IKrlP5V2J8O


Crdlmt
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
17 nov. 2019 à 13:36
Bonjour DjiDji

Ta formule de MFC est intéressante mais ne fonctionne pas selon l'attente, ainsi en G3 elle autorise les valeurs 3 et 4 qui sont interdites puisque deux fois 2 dans les cellules précédentes il ne peut y avoir de nombre supérieur à 2

Cdlmnt
1
DjiDji59430 Messages postés 4035 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 24 avril 2024 645
17 nov. 2019 à 20:08
Je ne suis pas d'accord
on a en ligne 3
1 3 2 3 2 4
Apres le 2 éme 3 je peux mettre 2(2<3 ou meme 3 (3 n'est pas supérieur a 3) mais 4 devient rouge
il est le premier "chiffre supérieur ,à 2 chiffres identiques présents dans cette même ligne."



Crdlmt
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
Modifié le 17 nov. 2019 à 20:32
Je ne te parle pas de la ligne 3 du tableau mais de la cellule G3 (ligne 2 du tableau) où on peut rentrer des valeurs supérieures à 2 alors qu'il y a deux 2 avant
Ta MFC fonctionne lorsque le chiffre en doublon est aussi le max de la plage mais pas dans le cas contraire, comme en ligne 2 du tableau le doublon est 2 et le nombre max 4 mais qui n'est pas un doublon
0
DjiDji59430 Messages postés 4035 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 24 avril 2024 645
18 nov. 2019 à 10:44
Ok
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
17 nov. 2019 à 15:57
Re

Si j'ai compris comme il faut :
https://mon-partage.fr/f/qZ3lWoCS/

Cdlmnt
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
Modifié le 17 nov. 2019 à 18:29
Bonsoir
Tu es encore un chef ça fonctionne on ne peut mieux
Bonne soirée
Cordialement
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
Modifié le 18 nov. 2019 à 11:16
Re

Pas sur de comprendre !
Tu veux dire par exemple que si en J1 il a été joué en 8 et en J2 en en 7 il ne sera possible en J3 que de jouer en 8 ou inférieur ? et si en J3 il est joué en 5 par ex , cela ne change rien on peut jouer en 8 ou inférieur ?
Par contre si en J1 c'est 8 et en J2 c'est 11, en J3 on peut jouer en 11 et en dessous ?

Cela reviendrait à dire qu'en J2 on peut jouer en n'importe quoi mais qu'à partir de J3 on ne peut pas jouer au dessus du max des journées précédentes, non ?

Et il n'y a plus de différence masculin féminin ?

1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
18 nov. 2019 à 11:58
Tu me dis exact mais ton dernier exemple contredit cela, car on ne peut pas jouer au dessus du max impliquerait qu'on ne peux pas jouer en 5 mais dans dans ton ex tu dis on ne peux plus jouer en 4
Ce qui voudrait dire que la règle du doublon s'applique aussi, le max est 4 mais comme il y a deux 3 on ne peut plus jouer au-dessus et donc pas en 4 ??
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
18 nov. 2019 à 12:07
Pour simplifier 1* en 1 1* en 2 plus possible 3, 4, 5 etc
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
18 nov. 2019 à 12:20
Dans ce cas plus besoin de macro une MFC devrait suffire
Voir si celle appliquée dans la feuille Brulage (2) convient
https://www.cjoint.com/c/IKsltcAxZvv
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
18 nov. 2019 à 18:36
Re

J'étais absent cet aprem

Résumons :
Pour les hommes comme pour les femmes n° de 1 à 9, brulage par rapport aux 2 plus petits n° précédemment, dans ton exemple 1 6 3 2, ne peut donc venir après que 1 ou 2
Pour les femmes en plus sont acceptés 10 et 11 dans tous les cas
Donc pas besoin d'un tableau spécial féminine

Merci de me confirmer que je raisonne enfin correctement
Si c'est bien le cas je pense que la macro est inutile et qu'une MFC suffira


1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
18 nov. 2019 à 18:49
Bonsoir
Je commence à m'y perdre l'exemple que j'ai mis post 26 n'est pas bon
Il faut essayé avec un seul tableau pour filles et garçons
dans l'exemple 1 6 3 2, ne peut donc venir après que 1 ou 2 plus rien ne peut venir puisque les chiffres mini sont présent
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
19 nov. 2019 à 14:54
Bonjour

Pour moi j'ai fini pour l’instant je t'ai envoyé le fichier hier (message 30) , tu ne l'as pas vu ?
Il est pour garçons et filles mais teste le, s'il fonctionne comme tu veux je modifierai la macro pour avoir une macro pour une feuille garçon uniquement
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
19 nov. 2019 à 16:02
Mince je n'avais pas vu !

Du coup j'en ai profité pour refaire pour brulage masculin uniquement
https://www.cjoint.com/c/IKtpbF1yCZP
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
20 nov. 2019 à 12:26
Bonjour

Sélectionne la plage B4:H123 puis Données - Validation de données et change le maximum

Cdlmnt
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
20 nov. 2019 à 18:52
Re

https://www.cjoint.com/c/IKur0aSPxEP

Cela devrait mieux aller ainsi
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
22 nov. 2019 à 01:15
Re

La macro de ton fichier considéré comme fini avait encore des erreurs (du aux rajouts de colonnes)
J'ai planché sur les brulages des filles et je pense que j'ai pu les intégrer correctement dans la macro
Fais tous les tests nécessaires et tu me diras
https://www.cjoint.com/c/IKwamDQNQkP

Cdlmnt
1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
22 nov. 2019 à 15:36
Bonjour

On va finir par y arriver !
https://www.cjoint.com/c/IKwoKwBlluP

Cdlmnt
1
JCB40 Messages postés 2878 Date d'inscription lundi 2 juillet 2018 Statut Membre Dernière intervention 20 avril 2024 461
Modifié le 22 nov. 2019 à 17:54
Re je m'arrache les cheveux ...
Toujours des hic
https://www.cjoint.com/c/IKwqu32Hsuh
Si trop hard on laisse tomber pour les filles
Je ne vais pas abuser de ton temps
Crdlt
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
23 nov. 2019 à 14:54
Il suffit de compléter ces 2 lignes de la macro
  ' coloration cellule
         If Target.Value < 10 And Target.Value > bruleM Then Cells(ligne, col).Interior.Color = 255
        If Target.Value > 9 And Target.Value > bruleF Then Cells(ligne, col).Interior.Color = 255

la 1ere par
:Msgbox "BM"

la 2nde par
:Msgbox "BF"


1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
23 nov. 2019 à 18:43
Sans doute parce que tu as rajouté après les lignes et non à la fin des lignes comme je disais
Ta macro modifiée doit donner ceci :
' coloration cellule
         If Target.Value < 10 And Target.Value > bruleM Then Cells(ligne, col).Interior.Color = 255:Msgbox "BM"
        If Target.Value > 9 And Target.Value > bruleF Then Cells(ligne, col).Interior.Color = 255:Msgbox "BF"

1
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
24 nov. 2019 à 00:13
Re,

Je devais être à l'ouest ou fatigué hier
Dans la macro dans la partie brulage en feminin - min pour >9 tu as la boucle :
 For n = 4 To col - 1
                 If Cells(ligne, n) > 10Then m(n - 3) = Cells(ligne, n)
                Next


Bien sûr ce n'est pas >10 qu'il faut mais >9

On va y arriver !

Enfin si tu veux contrôler par la validation de données l'entrée différente pour masculin et féminind'un nombre entier, tu effaces ta validation actuelle , tu sélectionne toute la plage - Validation de données et dans Autorise tu choisis Personnalisé et dans Formule tu entres :
=ET(ENT(D4)=D4;SI($C4="M";D4<10;D4<12))
1