Cherche formule ou macro

Bonjour,

j'ai besoin d'un coup de main. J'espère que je saurai bien expliquer ce dont je suis à la recherche.

Je travail avec un tableau dynamique croisé (voir la pièce jointe) un fichier que nous extrayons d'une base de données. À chaque période de paie, nous devons valider que les montants sont bien les mêmes montants que ceux obtenus avec notre logiciel de paie.

Donc, lorsque je double-clic sur la cellule pour voir "quelles cellules sont incluses" dans ce résultat, je vois bien les cellules, par exemple dans le fichier joint: =H6+H73+H91+H92 et les cellules correspondantes s'encadrent, par contre comme je dois valider chacune des cellules H6 H73 H91 et H92... je dois faire la recherche manuellement (donc sortir de la formule) pour aller les remplir en couleur, comme quoi elles sont validées.

Quand je fais ça, je perds mes références de toutes les cellules et je dois constamment revenir dans la formule chercher les coordonnées des cellules... Le tableau est gros et certaines formules ont beaucoup de cellules à valider.

J'aimerais savoir s'il y a une façon pour que lorsque je double-clique sur la cellule où il y a la formule que toutes les cellules correspondantes soient à partir de ce moment-là, remplies de couleur?

Je souhaite que oui, car ça me ferait tellement une économie de temps!

Merci à l'avance pour vos réponses.

Josée

10test-remises-2017.pdf (117.30 Ko)

Salut, difficile de se prononcer sur un fichier en pdf. Néanmoins, il existe une fonction dans Excel qui va peut être de dépanner. Il s'agit de l'audit de formule. Active cette fonctionnalité pour repérer les antécédents. A défaut.

Salut Jocadi, Lauange,

un début de solution, à tester!

Il faudrait en effet savoir si tes formules sont exclusivement basiques ou si elles contiennent des références absolues ou des variables, ou... ou...

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
If Target.HasFormula = True Then
    sFlag = Target.FormulaLocal & " "
    For x = 1 To Len(sFlag)
        iAsc = Asc(Mid(sFlag, x, 1))
        Select Case iAsc
            Case 65 To 90
                sCel1 = sCel1 & Chr(iAsc)
            Case 48 To 57
                sCel2 = sCel2 & Chr(iAsc)
            Case Else
                If sCel1 <> "" And sCel2 <> "" Then
                    sCell = sCel1 & sCel2
                    Range(sCell).Interior.ColorIndex = 8
                    sCel1 = ""
                    sCel2 = ""
                End If
        End Select
    Next
End If
'
End Sub

A+

Merci de vos réponses, faut croire que ma question était compréhensible un peu

Par contre pour l'audit ça ne semble pas fonctionné (mais chez-moi j'ai office 2016 alors qu'au bureau (le fichier original part de là) c'est Excel 97-2003 et je dois réfléchir pour que ça fonctionne avec la version Excel du bureau

Pour les codes, je ne sais pas trop comment ça fonctionne... ou comment l'utiliser... Pouvez-vous m'expliquer (je suis quand même Excel débutant )

Malheureusement, je ne peux donner le fichier en excel car c'est un fichier confidentiel...

Donc continuer à me donner vos conseils, j'apprécie beaucoup

Merci!

Josée

Salut Jocadi,

dans le fichier joint, clique sur les cellules. La macro (Module de la feuille1) colorera les cellules renseignées dans les formules (si formule il y a).

A+

6colorformula.xlsm (15.41 Ko)

Allo!

C'est exactement ce que je recherche comme résultat

Maintenenant, comment je fais pour appliquer cela dans mon tableau?

Quelle est la marche à suivre?

Un GROS Merci!

Josée

Salut Jocadi,

  • si tu peux, dans les options d'Excel, tu actives l'onglet 'Développeur' pour accéder facilement à l'éditeur VBA ;
  • sinon, ALT + F11 -> sélectionne la feuille concernée par cette macro dans l'explorateur à gauche -> clic sur la petite icône de gauche -> coller la macro telle quelle dans la grande fenêtre de droite (l'éditeur VBA) -> clic petite icône du milieu (retour programme) ;
  • enregistrer ;
  • GO pour le test !

Tu me racontes?

A+

Ahhh Merveilleux!!! Ça fonctionne! Merci beaucoup beaucoup!!

1 dernière mini question ?

Si je sélectionne une ligne avec la formule et que j'ai mes références en bleu OK mais si je sélectionne la ligne plus basse pour la formule, est-ce que c'est possible d'avoir mes références dans une autre couleur, pour les repérer ou les différencier plus facilement?

Mais je suis très contente, merci encore beaucoup!

Salut Jocadi,

ta nouvelle macro multicolore!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
If Target.HasFormula = True Then
    sFlag = Target.FormulaLocal & " "
    If [AAA1] > 2 Then
        [AAA1] = IIf([AAA1] + 1 < 57, [AAA1] + 1, 3)
    Else
        [AAA1] = 3
    End If
    '
    For x = 1 To Len(sFlag)
        iAsc = Asc(Mid(sFlag, x, 1))
        Select Case iAsc
            Case 65 To 90
                sCel1 = sCel1 & Chr(iAsc)
            Case 48 To 57
                sCel2 = sCel2 & Chr(iAsc)
            Case Else
                If sCel1 <> "" And sCel2 <> "" Then
                    sCell = sCel1 & sCel2
                    Range(sCell).Interior.ColorIndex = [AAA1]
                    sCel1 = ""
                    sCel2 = ""
                End If
        End Select
    Next
End If
'
End Sub

Tu sais comment on fait, maintenant!

A+

My god!!! Tu es hot!!!

Ça fonctionne à merveille!!

Merci!

Merci!

Merci!

Rechercher des sujets similaires à "cherche formule macro"