Problème avec fonction Max.si en VBA

Bonjour,

Je suis novice sur VBA et j'aurais besoin d'aide afin de faire fonctionner ma macro Max.si en VBA. Je souhaiterais que celle ci m'affiche en couleur la ligne dans laquelle se trouve la valeur la plus élevé pour chaque variable se trouvant dans une liste.

Sub max_si()

Dim ligne As Integer
 a = Sheets("tcd").Range("H247:H" & [H65000].End(xlUp).Row).Value
  Dim nom(): ReDim nom(1 To UBound(a))
  For i = 1 To UBound(a)
     nom(i) = CStr(a(i, 1))
  Next i

Dim rngVal As String
  Dim rngName As String
  Dim xMax As Double
  Dim xName As String

    rngVal = Sheets("feuil2").Range("A2:A6500").Address
    rngName = Sheets("feuil2").Range("B2:B6500").Address
    xName = Sheets("tcd").Range("H247:H6500").Address

  xMax = Evaluate("MAX(SI(" & rngName & "=" & xName & "," & rngVal & "))")

For ligne = 2 To ActiveSheet().UsedRange.Rows.Count

If Cells(ligne, 1) = xMax Then
Cells(ligne, 1).Row.Interior.ColorIndex = 3
End If

Next

Si vous pouviez m'expliquez ce que j'ai mal fait ce serait vraiment top.

Merci d'avance

Bonjour

Ton code est effectivement "étrange" mais sans fichier anonymisé difficile de tester

@+

Voici le fichier.

Merci pour la réponse aussi rapide

Rechercher des sujets similaires à "probleme fonction max vba"