VBA - Pb avec syntaxe de sumproduct

  • Initiateur de la discussion Initiateur de la discussion NeMoS
  • 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 !

NeMoS

XLDnaute Junior
Bonjour le Forum, bonjour à tous,

Voilà, je cherche dans deux colonnes différentes le nombre d'occurrence d'une combinaison x,y où x est une valeur de la colonne 1 et y de la colonne 2.

Sauf que tout est variable 🙂

J'ai utilisé sumproduct mais cela me renvoit #NAME, il doit y avoir une belle erreur de syntaxe mais je n'arrive pas à mettre la main dessus.

Voici une partie du code que j'ai commenté afin qu'il soit plus clair (du moins je l'espère).

Je vous remercie par avance de cotre aide, je sais que ce n'est pas facile de rentrer dans le code - et la tête- de quelqu'un d'autre !

NeMoS

Code:
'Ce bout de code fait partie d'une procédure, appellée ensuite par des macros qui donneront une valeur à country
' et techno
' il fait appel à deux feuille différentes



fintableau = Sheets(techno & "_" & country).Cells(7, Cells.Columns.Count).End(xlToLeft).Column

' techno et country sont des variables définies en string
'le tableau a un certain nombre de colonnes qui varie en fonction des valeur techno et country
' cette partie se trouve ailleurs dans le code

finmx = Sheets("PRODUCT KNOWLEDGE").Range("A" & Rows.Count).End(xlUp).Row
i = 2

'ceci est le second tableau dont le nombre de ligne varie


'la macro scanne chaque colonne de la ligne 7 du tableau de la feuille techno_country, récupère la valeur puis
'va chercher cette valeur dans un autre tableau d'une autre feuille (PRODUCT KNOWLEDGE)
'lorsque que la colonne (dans le second tableau) correspondant à cette valeur est récupérée, la macro la scanne,
'y recherche la valeur 1 et recoupe avec la valeur country d'une autre colonne du même tableau
'le but du jeu étant de compter le nombre de fois qu'apparrait la combinaison country/1 et de noter le résultat
' dans une cellule de la feuille techno_country

For i = 2 To fintableau
valeur = Sheets(techno & "_" & country).Cells(7, i).Value
       Set r = Sheets("PRODUCT KNOWLEDGE").Rows(2).Find(valeur, , xlValues, xlWhole)
       If Not r Is Nothing Then col = r.Column
          
        With Sheets("PRODUCT KNOWLEDGE")
            Set Level = .Range(.Cells(3, col), .Cells(finmx, col))
            Set geo = .Range(.Cells(3, 3), .Cells(finmx, 3))
        End With

'comptage des données et remplissage du tableau
Sheets(techno & "_" & country).Cells(8, i) = Evaluate("=SUMPRODUCT(('PRODUCT KNOWLEDGE'!" & geo.Address & " = " & country & ")*('PRODUCT KNOWLEDGE'!" & Level.Address & "=1))")
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
266
Réponses
7
Affichages
187
Réponses
22
Affichages
1 K
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
88
Retour