VBA et matrice

Bruno87

XLDnaute Nouveau
Bonjour,

Je suis en train d'écrire une macro et je tourne en rond depuis plus de 3h. Quelqu'un pour m'aider s'il vous plait?
Code:
Public Function couleur(sel As Range)
Application.Volatile
If sel.Interior.ColorIndex > 0 Then
couleur = 1

Else
couleur = 0

End If

End Function

Cette fonction a pour but de renvoyer des "0" et des "1" selon le remplissage de la cellule. Cette fonction fonctionne très bien, mais une fois placé dans la formule suivante, c'est le drame:
Code:
=SOMMEPROD(couleur(IF5:IF72);$C$5:$C$72;$IL$5:$IL$72)

Je pense que la fonction "couleur" doit renvoyer à une matrice pour que la formule précédent puisse fonctionner. Mais je n'arrive pas à comprendre comment faire.

J'ai donc essayé ce code, mais rien à faire:
Code:
Function couleur(sel As Object) As Variant
Application.Volatile

Dim temp As Variant
Dim i As Integer, j As Integer

temp = sel.Interior.ColorIndex

If IsArray(sel) Then

    For i = 1 To UBound(temp, 1)
        For j = 1 To UBound(temp, 2)
        
            If temp(i, j) > 0 Then
            temp(i, j) = 1
            Else
            temp(i, j) = 0
            End If
        Next j
    Next i

Else
    If temp.Interior.ColorIndex > 0 Then
    temp = 1
    Else
    temp = 0
    End If
    
End If

couleur = temp

End Function

Pouvez-vous m'aider?
 
Dernière édition:

Efgé

XLDnaute Barbatruc
Re : VBA et matrice

Bonjour Bruno87_ Pas certain d'avoir compris _ Une proposition _ Cordialement
 

Pièces jointes

  • Couleur(1).xls
    17.5 KB · Affichages: 36
  • Couleur(1).xls
    17.5 KB · Affichages: 39
  • Couleur(1).xls
    17.5 KB · Affichages: 39
Dernière édition:
C

Compte Supprimé 979

Guest
Re : VBA et matrice

Salut Bruno87, Efgé

Pourquoi ce cassé la tête, fait carrément une fonction qui fait la somme de cellules selon les couleurs
Pour pouvoir t'aider il me faudrait un fichier exemple

A+
 

Discussions similaires

Réponses
11
Affichages
347

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 989
dernier inscrit
jralonso