modification de la mise en forme quand nouvelle saisie

Ladd

XLDnaute Nouveau
Bonjour,

Je dois faire une mise à jour journalière d'un tableau excel ; je souhaite mettre en évidence les valeurs ( des nombres) qui ont changés, dans ce cas-ci en leur attribuant une couleur de police différente ; je connais la mise en forme conditionnelle mais n'arrive pas créer la formule adéquate, qui ferait que lorsque je change le contenu de la cellule la couleur change automatique ( pour l'instant je fais cette modification "manuellement" après chaque nouvelle saisie...)

Je vous joins une partie de mon fichier ( les chiffres en bleu sont ceux que j'ai saisi aujourd'hui, les noirs étant identiques à ceux de la veille)

Merci d'avance
 

Pièces jointes

  • exemple ED.xlsx
    13.3 KB · Affichages: 42
  • exemple ED.xlsx
    13.3 KB · Affichages: 43

vgendron

XLDnaute Barbatruc
Re : modification de la mise en forme quand nouvelle saisie

Hello

suis pas sur qu'une MFC soit capable de gerer la modification d'une cellule.
à mon avis, elle ne fait qu'appliquer une nouvelle règle selon le contenu de la cellule..
en fait. elle ne voit que le résultat du changement (nouvelle valeur). pas le changement en lui meme

pour ca.. il faut aller dans les évènements vba d'une feuille

ex de code à mettre dans la feuille
alt+f11 pour ouvrir l'éditeur VBA
puis à gauche, cliquer sur la Feuil1 et à droite. coller le code ci dessous


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'si la cellule changée fait partie de la zone A1:O10 alors, on passe la fonte en rouge

If Not Intersect(Target, Range("A1:O10")) Is Nothing Then
    Target.Font.Color = RGB(255, 0, 0)
End If

End Sub

ps: si tu fais un double clic dans la cellule pour la changer. et que finalement tu remets la meme valeur.. c'est considéré comme un changement. ca passera donc en rouge...
 

Pièces jointes

  • exemple ED.xlsm
    17 KB · Affichages: 42
Dernière édition:

job75

XLDnaute Barbatruc
Re : modification de la mise en forme quand nouvelle saisie

Bonjour Ladd, bienvenue sur XLD,

Voyez le fichier joint.

Une solution est de mémoriser les valeurs du tableau B3:G10 dans un nom défini.

Les noms définis Memo et Jour sont créés par cette macro dans ThisWorkbook :

Code:
Private Sub Workbook_Open()
On Error Resume Next 'si le nom Jour n'existe pas
If [Jour] <> Date Then
  Me.Names.Add "Memo", [B3:G10].Value
  Me.Names.Add "Jour", Date
End If
End Sub
Une Mise en forme conditionnelle (MFC) colore les valeurs modifiées dans la journée :

Code:
=ESTERREUR(LN(B3=INDEX(Memo;LIGNES(B$3:B3);COLONNES($B3:B3))))
ESTERREUR est nécessaire car dans Memo les cellules vides donnent #N/A.

Edit : salut vgendron, je ne vous avais pas vu.
A+
 

Pièces jointes

  • exemple ED(1).xlsm
    24.4 KB · Affichages: 47
Dernière édition:

Ladd

XLDnaute Nouveau
Re : modification de la mise en forme quand nouvelle saisie

Bonjour,

Merci beaucoup pour vos réponses, je ne maîtrise pas du tout les macros ni l'éditeur VAB, mais je vais me pencher sur le problème ce week end et essayer vos solutions
 

job75

XLDnaute Barbatruc
Re : modification de la mise en forme quand nouvelle saisie

Bonjour Ladd, le forum,

Pour la MFC, la couleur bleu n'étant pas très visible, j'ai mis la couleur rouge dans ce fichier (2).

Bonne journée.
 

Pièces jointes

  • exemple ED(2).xlsm
    24.3 KB · Affichages: 41

Discussions similaires

Réponses
12
Affichages
159