mettre en forme les cellules utilisées dans une formule

lizanne828

XLDnaute Nouveau
Bonjour,

Je sais que l'on peut repérer les antécédents dans une formule. Mais je voudrais savoir s'il est possible de colorer par exemple des cellules au fur et à mesure qu'elles sont utilisées dans une formule.
Je m'explique: en feuille 1, j'ai tableau avec un budget, et des grands postes de dépenses. En feuille 2, j'ai une balance de comptes avec tout le détail des comptes mouvementés. Je voudrais voir les cellules de mon tableau 2 se colorer au fur et à mesure que je les utilise pour les mettre dans mon tableau 1. Ainsi, je pourrai voir à la fin ce que j'ai oublié dans mon tableau 2.

Est-ce possible??

Merci !!
 

excfl

XLDnaute Barbatruc
Re : mettre en forme les cellules utilisées dans une formule

Bonjour lizanne828,

Voir fichier joint ?

excfl
 

Pièces jointes

  • MFC.xlsx
    10.9 KB · Affichages: 36
  • MFC.xlsx
    10.9 KB · Affichages: 39
  • MFC.xlsx
    10.9 KB · Affichages: 36
Dernière édition:

lizanne828

XLDnaute Nouveau
Re : mettre en forme les cellules utilisées dans une formule

Bonjour

C'est une solution intéressante. Mon souci est que dans mon tableau de la feuille 1, les cellules contiennent des sommes de plusieurs cellules du tableau de la feuille 2.
J'ai en gros feuille 1 quelques lignes du style "charges d'entretien", "assurances", "eau, EDF", "frais postaux". Dans la feuille 2, j'ai ma balance des comptes, c'est à dire une liste d'une centaine de dépenses à mettre dans une des 4 lignes. Le but du jeu est que la centaine de dépenses aient bien été mises dans une des 4 lignes...

Désolée je ne sais pas si je suis claire, et s'il est possible de faire ça sans macro. La mise en forme conditionnelle est en effet sûrement une solution, mais je ne vois pas comment m'en sortir pour produire une condition du genre "surligner si utilisé dans le tableau 1"...
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : mettre en forme les cellules utilisées dans une formule

Bonjour,

Un essai en PJ

Code:
Sub colorieAntécédants()
 couleurs = Array(3, 4, 6, 7, 8, 15, 17, 20, 22, 24, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 50, 53)
 coul = 1
 For Each c In Cells.SpecialCells(xlCellTypeFormulas, 23)
  expression = Mid(c.Formula, 2)
  tmp = Replace(Replace(expression, "(", ""), ")", "")
  tmp2 = Replace(Replace(Replace(Replace(tmp, "+", "|"), "*", "|"), "-", "|"), "/", "|")
  a = Split(tmp2, "|")
  For i = 0 To UBound(a)
     On Error Resume Next
     Range(a(i)).Interior.ColorIndex = couleurs(coul)
     On Error GoTo 0
  Next i
  c.Interior.ColorIndex = couleurs(coul)
  coul = coul + 1
 Next c
End Sub

JB
 

Pièces jointes

  • ColorieAntecedents1.xls
    55 KB · Affichages: 26
Dernière édition:

Discussions similaires