Bonjour,
Je souhaiterai effectuer une MFC sur des cellules d'un tableur.
J'ai une cellule "Z16" dans lequel il y a un chiffre variable en l’occurrence on va dire 3.
En fonction de ce chiffre, un certains nombre de cellules se mettent en forme. je voudrai que si elles sont vides, les cellules s'affichent d'une certaine couleur et si elles sont remplies elles se remettent en blanc comme initialement. (Enfin transparent quoi)
J'ai réussis à mettre en place la première MFC mais lorsqu'il s'agit de faire l'autre partie (Celle ou ca se remet en transparent) je n'arrive pas à le faire ligne par ligne ! C'est tout le bloc qui se change
Etat actuel :
Etat souhaité :
J'ai essayé avec la fonction With et la fonction If mais je dois mal les utiliser car rien ne se passe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dim MaVariable As Range With Range(Cells(i + 20, 24), Cells(i + 20, 25)) Set MaVariable = Range(Cells(i + 20, 24), Cells(i + 20, 25)) .FormatConditions.Add Type:=xlExpression, Formula1:="=NBCAR(SUPPRESPACE(X21))=0" ' .FormatConditions.Add Type:=xlExpression, Formula1:="=NBCAR(SUPPRESPACE(" & MaVariable & "))=0" 'J'ai voulu tenté avec une variable mais ça fait tout planter et je n'ai plus aucun résultat With .FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = RGB(255, 199, 206) .TintAndShade = 0 End With End WithAuriez-vous une idée de comment je peux faire en sorte de n'avoir que la cellule dans laquelle j'écrit qui se remet en transparent ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 'Range(Cells(i + 20, 24), Cells(i + 20, 25)) 'Correspond à mes cellules qui s'ajoutent quand je renseigne le nombre de paramètres If IsEmpty(Range(Cells(i + 20, 24), Cells(i + 20, 25))) Then Range(Cells(i + 20, 24), Cells(i + 20, 25)).Interior.Color = RGB(255, 199, 206) Else Range(Cells(i + 20, 24), Cells(i + 20, 25)).Interior.Color = RGB(255, 255, 255)
Pour vous situer un peu le contexte, il s'agit d'une validation visuelle tant que la cellule est rougeâtre, l'utilisateur l'a oubliée.
Le code est plus gros que ça mais je sais pas si c'est réellement utile de vous le mettre en entier. Afin d'éviter un spam potentiellement inutile je le met pas dans un premier temps. Si vous en avez besoin je le mettrais lors de mon prochain post
Merci d'avance,
Cordialement,
Axel
Partager