Mise en forme conditionnelle
Fermé
LaeDan
Messages postés
5
Date d'inscription
jeudi 22 mai 2014
Statut
Membre
Dernière intervention
23 mai 2014
-
Modifié par LaeDan le 22/05/2014 à 11:23
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 - 23 mai 2014 à 14:13
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 - 23 mai 2014 à 14:13
A voir également:
- Mise en forme conditionnelle
- Mise en forme conditionnelle excel - Guide
- Dans cette présentation, sarah avait encadré directement le titre de certaines diapositives avant d'automatiser cette mise en forme pour tout le document. sur quelles diapositives avait-elle encadré directement le titre ? ✓ - Forum Bureautique
- Mise en forme conditionnelle date dépassée ✓ - Forum Bureautique
- Mise en forme tableau croisé dynamique - Guide
- Mise en forme conditionnelle ne fonctionne pas ✓ - Forum Excel
1 réponse
f894009
Messages postés
17189
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
6 mai 2024
1 705
22 mai 2014 à 11:57
22 mai 2014 à 11:57
Bonjour,
MFC pas possible, VBA ok sur selection cellule
code a mettre dans le VBA de la feuille:
A+
MFC pas possible, VBA ok sur selection cellule
code a mettre dans le VBA de la feuille:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'test si cellule selectionnee est dans la plage
If Not Intersect(Target, Range("B:B")) Is Nothing Then
'test si ce
If Target.FormulaLocal <> "" Then
'colonne A sans remplissage
Columns("A:A").Interior.Pattern = xlNone
'mise en tableau des adresses cellules de la formule
TAdress = Split(Range(Target.Address).FormulaLocal, "+")
'coloriage des cellules: ici jaune,Replace(TAdress(0), "=", "")--->pour supprimer le = du debut de formule
Range(Replace(TAdress(0), "=", "")).Interior.Color = 65535
Range(TAdress(1)).Interior.Color = 65535
End If
End If
End Sub
A+
22 mai 2014 à 14:49
Malheureusement ca n'a pas l'air de fonctionner. C'est la première fois que je fais du vba.
J'ai fait Alt+F11, insertion > module, j'ai copier-coller le code dans le module dont j'ai changé le nom à côté de name (sans espace ni rien de prohibé^^) mais à partir de là je ne sais pas quoi faire et il ne s'éxécute pas. On dirait qu'il ne s'enregistre pas...
Que se passe t-il?
Modifié par f894009 le 22/05/2014 à 14:55
J'ai fait Alt+F11, insertion > module---->et ben non, ce n'est pas ce que j'ai ecrit---->code a mettre dans le VBA de la feuille en double cliquant sur le feuille une fois la fenetre VBA ouverte
Modifié par LaeDan le 22/05/2014 à 15:13
C'est exactement ce que je voulais, merci beaucoup!
Comment fait-on pour changer de couleur le remplissage?
Modifié par LaeDan le 22/05/2014 à 16:28
J'ai donné un exemple trivial dans le premier post mais mon document ressemble plus à:
B1=A1
B2=A4+A5+A6
B3=SOMME(A4:A12)
B4=A9+A11
...
Bref des opérations 'somme' basiques mais malgré tout de "taille" différente. Lorsque j'essaie d'appliquer le code, Excel m'affiche "erreur d'exécution '9': l'indice n'appartient pas à la seléction" SAUF pour les cellules composées d'une somme de deux cellules. J'en ai donc déduit (peut-être à tort) que l'erreur venait de la fin du code:
Range(Replace(TAdress(0), "=", "")).Interior.Color = 65535
Range(TAdress(1)).Interior.Color = 65535
Mais même en travaillant dessus et en essayant de faire une boucle while, cela ne fonctionne pas. Au secours!
22 mai 2014 à 17:45
J'ai donné un exemple trivial C'est le moins que vous puissiez en dire. En dehors de SOMME, vous avez d'autres formules iconoclastes ????
Rassurez vous, c'est faisable avec quelques lignes de code supplementaires