Deux cellules consécutives de même couleur
Résolu
Laly.LAREUNION
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
Laly.LAREUNION Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Laly.LAREUNION Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Deux cellules consécutives de même couleur
- Comment faire la somme de plusieurs cellules non consécutives sur excel - Guide
- Excel cellule couleur si condition texte - Guide
- Concatener deux cellules excel - Guide
- Boite a couleur - Télécharger - Divers Photo & Graphisme
- Nombre de jours entre deux dates excel - Guide
9 réponses
Bonjour,
Pas facile de comprendre ce que vous désirez et où est le problème. En plus votre procédure ne peut pas fonctionner par manque d'instruction [Next cellule...].
Pouvez-vous apporter un éclaircissement ?
Pas facile de comprendre ce que vous désirez et où est le problème. En plus votre procédure ne peut pas fonctionner par manque d'instruction [Next cellule...].
Pouvez-vous apporter un éclaircissement ?
Bonjour,
ça serait plutôt sur .change des 8x1370 cellules de saisie.
Mais tu ne peux pas tester la couleur mise par une MFC avec .interior.colorindex, c'est beaucoup plus complexe que ça. Ré-utilise plutôt le test de la MFC. par exemple If cellule <x and ...
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
ça serait plutôt sur .change des 8x1370 cellules de saisie.
Mais tu ne peux pas tester la couleur mise par une MFC avec .interior.colorindex, c'est beaucoup plus complexe que ça. Ré-utilise plutôt le test de la MFC. par exemple If cellule <x and ...
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Je peux également reprendre les règles de la MFC mais ma volonté première est de faire apparaître une fenêtre pop up lorsque deux cellules consécutives ne respectent pas les règles de MFC. Deux valeurs jaunes signifient "début de dérives process" et une cellule rouge signifie "dérive de process".
J'ai donc pensé que faire intervenir la couleur de fond de la cellule était plus judicieuse et plus rapide dans mon cas! :s
J'ai donc pensé que faire intervenir la couleur de fond de la cellule était plus judicieuse et plus rapide dans mon cas! :s
Merci pour vos réponses.
Je vous ai joint (enfin j'ai tenté, j'espère que cela fonctionne) le fichier exemple.
Merci d'avance pour vos aides.
https://www.cjoint.com/?0JClzV3zHqc
Je vous ai joint (enfin j'ai tenté, j'espère que cela fonctionne) le fichier exemple.
Merci d'avance pour vos aides.
https://www.cjoint.com/?0JClzV3zHqc
Il existe donc dans la fonction MFC la possibilité de mettre un message pop up?
Non plus. Je parlais de reprendre le test MFC dans une macro.
Vu que tu n'avais pas précisé j'ai prévu que ça fonctionne sur un collé sur plusieurs colonnes. Ce qui complique un peu mais je pense que tu t'y retrouvera et que tu comprendras le principe.
Dans ce cas tu peux avoir les 2 messages dans la msgbox.
Tu peux tester en revalidant tes saisies.
A tester, Private Sub Worksheet_Change :
https://www.cjoint.com/?DJCq05xC3og
eric
edit : fichier modifié, je viens de faire le lien avec ton autre fil.
Date et heure ne se mettent que si vides. Préciser si tu préfères une mise à jour à chaque saisie.
Si ok ne pas oublier de mettre en résolu l'autre fil également.
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Non plus. Je parlais de reprendre le test MFC dans une macro.
Vu que tu n'avais pas précisé j'ai prévu que ça fonctionne sur un collé sur plusieurs colonnes. Ce qui complique un peu mais je pense que tu t'y retrouvera et que tu comprendras le principe.
Dans ce cas tu peux avoir les 2 messages dans la msgbox.
Tu peux tester en revalidant tes saisies.
A tester, Private Sub Worksheet_Change :
https://www.cjoint.com/?DJCq05xC3og
eric
edit : fichier modifié, je viens de faire le lien avec ton autre fil.
Date et heure ne se mettent que si vides. Préciser si tu préfères une mise à jour à chaque saisie.
Si ok ne pas oublier de mettre en résolu l'autre fil également.
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Salut le pingou :-)
Rapide, rapide, ça date d'hier... ;-)
@laly :
JAMAIS TU NE DESACTIVES TES PROCEDURE ONKEY OU ONTIME POUR NE PAS EMM...BETER L'UTILISATEUR ????
Parce que ton fichier qui se rouvre dès qu'on tape Entrée dans excel ça pète les c....
Quand on fait un truc comme ça le minimum est de rendre un environnement propre à l'utilisateur.
Et sur un forum tu peux les mettre en commentaires puisqu'ils n'ont rien à voir avec la question, ou prévenir !
Ajouter :
eric
Rapide, rapide, ça date d'hier... ;-)
@laly :
JAMAIS TU NE DESACTIVES TES PROCEDURE ONKEY OU ONTIME POUR NE PAS EMM...BETER L'UTILISATEUR ????
Parce que ton fichier qui se rouvre dès qu'on tape Entrée dans excel ça pète les c....
Quand on fait un truc comme ça le minimum est de rendre un environnement propre à l'utilisateur.
Et sur un forum tu peux les mettre en commentaires puisqu'ils n'ont rien à voir avec la question, ou prévenir !
Ajouter :
Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.OnKey "~", "" Application.OnKey "{enter}", "" Application.OnKey "{TAB}", "" End Sub
eric
Oups... je suis désolée Eriiic :s mais ce fichier Excel avec les macros n'a pas été créé par moi mais par mon prédécesseur; je cherche uniquement à l'améliorer avec de nouvelles fonctions.
Que faut-il que je supprime dans la procédure pour "rendre l'environnement propre à l'utilisateur"?
Merci pour ton aide.
Que faut-il que je supprime dans la procédure pour "rendre l'environnement propre à l'utilisateur"?
Merci pour ton aide.
Bonjour,
au minimum ajoute dans thisworkbook les 5 lignes que je t'ai mise.
Au mieux supprime :
Application.OnKey "~", "dateheure"
Application.OnKey "{enter}", "dateheure"
Application.OnKey "{TAB}", "showuserform"
et fait l'appel tes proc d'une autre façon.
Surtout quand on voit en plus que dateheure, qui peut être appelée de n'importe où dans n'importe quel classeur modifie la feuille active sans aucun contrôle de qui elle est. Une dangereuse abomination !
Idem pour Workbook_SheetBeforeRightClick qui appelle chgtType sans même contrôler si la feuille est concernée...
Bref, tout ce qui est dans this_workbook est plus que douteux.
Quoiqu'il en soit toutes les actions qui modifient l'environnement de l'utilisateur doivent être mises en commentaire lorsque tu postes sur un forum
Et si elles sont nécessaires pour la question tu expliques, et l'intervenant saura bien les activer pour tester s'il le veut
eric
au minimum ajoute dans thisworkbook les 5 lignes que je t'ai mise.
Au mieux supprime :
Application.OnKey "~", "dateheure"
Application.OnKey "{enter}", "dateheure"
Application.OnKey "{TAB}", "showuserform"
et fait l'appel tes proc d'une autre façon.
Surtout quand on voit en plus que dateheure, qui peut être appelée de n'importe où dans n'importe quel classeur modifie la feuille active sans aucun contrôle de qui elle est. Une dangereuse abomination !
Idem pour Workbook_SheetBeforeRightClick qui appelle chgtType sans même contrôler si la feuille est concernée...
Bref, tout ce qui est dans this_workbook est plus que douteux.
Quoiqu'il en soit toutes les actions qui modifient l'environnement de l'utilisateur doivent être mises en commentaire lorsque tu postes sur un forum
Et si elles sont nécessaires pour la question tu expliques, et l'intervenant saura bien les activer pour tester s'il le veut
eric
Eric, merci pour ton aide. :D
Si je peux encore abusé un peu de ta patience et de ta science!
Finalement, il faudra qu'apparaisse dans la formule VBA non pas Cells(31, col) mais moyenne de cells(G13:G20) par exemple... (applicable sur l'ensemble du fichier)
Le message apparaît à chaque fois que tu tapes une valeur dans la plage (G13:G20)...
Merci pour ton retour.
Si je peux encore abusé un peu de ta patience et de ta science!
Finalement, il faudra qu'apparaisse dans la formule VBA non pas Cells(31, col) mais moyenne de cells(G13:G20) par exemple... (applicable sur l'ensemble du fichier)
Le message apparaît à chaque fois que tu tapes une valeur dans la plage (G13:G20)...
Merci pour ton retour.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Juste au passage, comment on sait que le résultat est définitif.... Si par exemple il va encore corrigé une ou plusieurs valeurs ?
Salutations.
Le Pingou
Juste au passage, comment on sait que le résultat est définitif.... Si par exemple il va encore corrigé une ou plusieurs valeurs ?
Salutations.
Le Pingou
On considèrera que le résultat est définitif une fois que la 8ème cellule est entrée.
Peu importe s'il corrige une ou plusieurs valeurs par la suite.
Peu importe s'il corrige une ou plusieurs valeurs par la suite.
Pas bonjour non plus,
Bonjour le pingou,
Si la moyenne n'est valable que si les 8 saisies sont faites pourquoi ne mets-tu pas en formule plutôt :
=SI(NBVAL(K13:K20)=8;MOYENNE(K13:K20);NA()) ?
Sinon remplace :
If IsError(Cells(31, Target.Column)) Then Exit Sub
par :
If Application.CountA(Cells(13, Target.Column).Resize(8)) < 8 Then Exit Sub
Si tu ne changes pas tes formules il restera une erreur lorsque tes formules en 24:30 retournent #N/A. Tu n'as pas dit ce que tu voulais. Dans quels cas c'est normal ou pas ? Rien ou alerte ?
eric
Bonjour le pingou,
Si la moyenne n'est valable que si les 8 saisies sont faites pourquoi ne mets-tu pas en formule plutôt :
=SI(NBVAL(K13:K20)=8;MOYENNE(K13:K20);NA()) ?
Sinon remplace :
If IsError(Cells(31, Target.Column)) Then Exit Sub
par :
If Application.CountA(Cells(13, Target.Column).Resize(8)) < 8 Then Exit Sub
Si tu ne changes pas tes formules il restera une erreur lorsque tes formules en 24:30 retournent #N/A. Tu n'as pas dit ce que tu voulais. Dans quels cas c'est normal ou pas ? Rien ou alerte ?
eric