• Initiateur de la discussion Initiateur de la discussion systmd
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

systmd

Guest
Bonjour à tous,

J'ai un petit souci avec la fonction Somme Couleur MFC de BOISGONTIER.

Dans mon exemple :
- (onglet OK) ça fonctionne mais j'ai un problème de rafraichissement au démarrage (résultat =0)

- (onglet Erreur), mon cas concret, ne fonctionne pas.

Est-ce que quelqu'un aurai la gentillesse d'y jeter un œil, car je ne vois pas où je fais une erreur.
Merci
 
Dernière modification par un modérateur:
Re : Somme Couleur MFC

Bonjour le forum 😉

Un petit up, avec les retours de vacances ont ne sais jamais 🙂 .

J'ai fais autrement (plus long) , mais je ne vois toujours pas où je fais une erreur.
Dommage, avec cette fonction, celà m'aurait facilité la vie.

@ BOISGONTIER : je vous ai laissé un MP, pas d'idée sur le sujet?
 
Re : Somme Couleur MFC

Bonjour à tous,

Bon l'erreur viens de la fonction "CouleurMFC(cel)"
J'ai rajouté la fonction <<ET>> dans ff et fa comme ci-dessous en rouge
Code:
Function CouleurMFC(cel)
  Application.Volatile
  Set c = Range(cel.Address)
  ff = Array("Somme", "aujourdhui()", "nb.si", "equiv", "recherchev", _
    "Nbval", "sommeprod", "joursem", "gauche", "droite", "stxt"[COLOR="Red"],"et")[/COLOR]
  fa = Array("Sum", "today()", "countif", "match", "vlookup", _
     "counta", "sumproduct", "weekday", "left", "right", "mid"[COLOR="Red"],"and" [/COLOR])
  a = Array("=", ">", "<", ">=", "<=", "<>", "BETWEEN")
  b = Array(xlEqual, xlGreater, xlLess, xlGreaterEqual, xlLessEqual, xlNotEqual, xlBetween)
  i = 1
  Do While i <= c.FormatConditions.Count And Not témoin
    If c.FormatConditions(i).Type = xlCellValue Then
    tmp1 = Evaluate(c.FormatConditions(i).Formula1)
    oper = a(Application.Match(c.FormatConditions(i).Operator, b, 0) - 1)
    If oper <> "BETWEEN" Then
      If Evaluate(c & oper & tmp1) Then
        coul = c.FormatConditions(i).Interior.ColorIndex
        témoin = True
      End If
    Else
      tmp2 = Evaluate(c.FormatConditions(i).Formula2)
      If Evaluate("AND(" & c & ">=" & tmp1 & "," & c & "<=" & tmp2 & ")") Then
         coul = c.FormatConditions(i).Interior.ColorIndex
         témoin = True
      End If
    End If
  Else
     z = c.FormatConditions(i).Formula1
     For k = LBound(ff) To UBound(ff)
       z = Replace(z, UCase(ff(k)), UCase(fa(k)))
     Next k
[COLOR="blue"]     If Evaluate(z) = True Then
        coul = c.FormatConditions(i).Interior.ColorIndex
        témoin = True
     End If[/COLOR]
   End If
   i = i + 1
  Loop
  CouleurMFC = coul
End Function

Toujours rien, je pense qu'il faudrait passer la formule en mode R1C1, mais je n' arrive pas (couleur bleu)
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
43
Affichages
797
Réponses
5
Affichages
307
Réponses
3
Affichages
244
Réponses
19
Affichages
1 K
Réponses
1
Affichages
328
Réponses
7
Affichages
384
Retour