Surligner une cellule avec valeur changée

PhilippeFrQc Messages postés 16 Statut Membre -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Dans une des cellules d'un onglet Excel, la valeur s'affiche en fonction de formule.
Existe-t-il un moyen de mettre la cellule en surbrillance ou autre (couleur, etc...) si l'utilisateur modifie la valeur?

Exemple:
Une cellule contient une formule qui affiche la date du jour.
Si l'utilisateur y met une date quelconque, la cellule accepte la valeur mais elle apparait en rouge.

Petite précision qui a son importance:
En fait, ce n'est pas seulement une cellule mais plutôt plusieurs milliers (220 lignes sur 30 colonnes) donc, j'aimerai ne pas les reprendre une par une!

Merci

4 réponses

leplot Messages postés 193 Statut Membre 131
 
Bonjour

en format conditionnel (Format/mise en forme conditionnelle/)
mettre "la valeur de la cellule est " "différente de " "=aujourdhui()"
Cliquer sur format et choisir un motif de couleur

0
PhilippeFrQc Messages postés 16 Statut Membre 1
 
Merci LePlot,
Effectivement ça fonctionne et c'Est exactement ce que je souhaitais, mais comme j'ai plusieurs milliers de cellules à traiter, j'aimerai savoir s'il existe une macro qui pourrait le faire à ma place...

Ex:
Pour chaque feuille,
   Pour chaque cellule qui contient une formule,
       si le contenu de la cellule est différent de la formule
            alors "mettre en rouge"
       fin si
       cellule suivante
   fin des cellules
   feuille suivante
fin des feuille

Facile non ?????

Sérieusement, je vais essayer de regarder ça mais ce qui me manquerait, c'Est le si le contenu de la cellule est différent de la formule alors "mettre en rouge"
0
leplot Messages postés 193 Statut Membre 131
 
Re,
Premièrement, le format conditionnel peut être saisi une fois sur pour toute une sélection, si le format est le même.

Pour ta macro, elle ne semble pas compliquée mais je ne comprends pas ce que tu veux faire.
" Pour chaque cellule qui contient une formule,
si le contenu de la cellule est différent de la formule"
Si elle contient une formule, elle ne peut pas être différente de la formule !

Si tu veux tester si la cellule est une formule pour voir les cellules où la formule a été écrasée, attention...
il faut tester s'il y a une formule dans la cellule. Mais il faut limiter ce test aux cellules qui t'intéressent sinon tu va avoir beaucoup de couleur !

Si tu veux tester la présence d'une formule donnée (comme aujourdhui()) c'est possible je pense.

Je regarde comment faire mais je pense que le format conditionnel est plus simple.

Détaille-moi ton besoin

LePlot

0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour Philippe, Leplot

si j'ai compris ta demande on souligne une nouvelle donnée qui n'est pas une formule ?:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:AD220")) Is Nothing Then: Exit Sub
If Target.HasFormula = False Then
    Target.Font.Underline = xlUnderlineStyleSingle
End If
End Sub

à adapter à l'adresse de ta plage

à copier-coller dans le module feuille concerné (clic droit sur le nom d'onglet-visualiser le code- et coller
0