Mise en évidence cellules antécédentes

Bonjour,

Suite à quelques recherches, je n'ai pas trouvé exactement ce que je voudrais faire.

Je souhaiterai mettre en évidence les cellules ayant permis le calcul de la cellule sélectionnée simplement en passant la souris sur celle-ci.

Par exemple :

B5 = A1*A2*A3

J'aimerai, en cliquant sur B5 que les cellules A1 A2 et A3 soient mises en évidence par une couleur de mon choix par exemple.

J'ai déjà trouvé la fonction : repérer les antécédents dans l'onglet formules, mais ce système de flèche n'est pas très lisible..

Merci par avance pour votre aide,

Bonjour,

excel t'offre cette possibilité en standard. si tu sélectionnes une cellule et que tu cliques dans la barre de formule tu verras les cellules impliquées dans le calcul de la cellule.

Oui, j'ai déjà repéré cette option également, mais n'y a t'il pas une fonction plus simple existant comme je l'ai décrite?

Il s'agit d'une feuille de calcul verrouillée et il est impossible pour l'utilisateur de cliquer sur la barre de formule

Bonjour,

une solution avec une procédure événementielle, à mettre dans le code de la feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    For Each c In Target.DirectPrecedents
    c.Interior.ColorIndex = 4
    Next
    On Error GoTo 0
End Sub

Qu'est ce qu'une procédure événementielle ?

Et comment insérer le code dans la feuille , svp ?

Je suis débutant dans excel.. :/

Merci pour ton aide

neoxig a écrit :

Qu'est ce qu'une procédure événementielle ?

une macro qui se déclenche suite à un événement qui se passe en excel, comme par exemple fermer le classeur ou sélectionner une cellule, ...

Et comment insérer le code dans la feuille , svp ?

1 - copier le code de la macro se trouvant dans ce message (tout sélectionner, puis ctrl-c)

2 - aller en excel

3 - faire un clic-droit sur le nom de la feuille, choisir "voir le code" (ou équivalent en français)

l'éditeur de macro s'ouvre

4 - coller le code de la macro (ctrl-v)

5 - retourner dans excel -alt-f11

la macro est alors installé

chaque nouvelle sélection d'un cellule contenant une formule provoquera la mise en vert des cellules impliquées dans son calcul

Super !

Par curiosité, comment as tu trouve ce code ? Pour que je tente à mon tour de le modifier et essayer de l'améliorer, car l'effet est permanent. Lorsque l'on clique sur la cellule, les antécédents deviennent verts, mais ils restent verts quand on clique sur d'autres cellules

Merci beaucoup pour ton aide

neoxig a écrit :

Super !

Par curiosité, comment as tu trouve ce code ? Pour que je tente à mon tour de le modifier et essayer de l'améliorer, car l'effet est permanent. Lorsque l'on clique sur la cellule, les antécédents deviennent verts, mais ils restent verts quand on clique sur d'autres cellules

Merci beaucoup pour ton aide

bonjour,

comment je l'ai trouvé ? je le trouve bien, lol

voici une version qui efface la couleur de toutes les cellules colorées sur la feuille avant de colorer celles qui sont impliquées dans la formule de la cellule sélectionnées

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Cells.Interior.ColorIndex = 0
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    For Each c In Target.DirectPrecedents
    c.Interior.ColorIndex = 4
    Next
    On Error GoTo 0
End Sub

Salut acide sulfurique,

J'ai testé ton 2ème code, premièrement sur un fichier test avec deux calculs simples, et ça fonctionne parfaitement.

J'ai ensuite testé sur mon tableau, et je rencontre deux problèmes

Ci-joint le fichier original pour que tu puisses constater ce qui ne fonctionne pas correctement

  • Les cellules dont je veux repérer les antécédents (colonnes I,J,K) sont elles même issues d'un précédent calcul (colonnes B,C,D), et ne sont par conséquent pas mises en évidence
  • Lorsque je verrouille la feuille de calcul, il devient impossible de modifier les cellules du tableur, même celles qui ne sont pas verrouillées.

Je suis pas encore au top sur excel, j'en découvre encore beaucoup grâce à ce forum.

merci de ton aide,

19loading-matrix.xlsx (13.59 Ko)

Bonsoir,

je vois que tu utilises des cellules fusionnées.

voici le code adapté, qui permet la recherche des cellules impliquées pour une sélection d'un ensemble de cellules.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Cells.Interior.ColorIndex = 0

    On Error Resume Next
    For Each c In Target.DirectPrecedents
    c.Interior.ColorIndex = 4
    Next
    On Error GoTo 0
End Sub
Rechercher des sujets similaires à "mise evidence antecedentes"