SUM IF et classeur externe

sh4mbala

XLDnaute Nouveau
Bonjour à tous ! Je viens tout juste de découvrir le forum, donc je suis un petit nouveau...

Ce matin j'ai codé une macro qui doit remplir automatiquement un tableau. Tout fonctionne à peu près bien mis à part UNE formule que je n'arrive pas à faire fonctionner.

J'ai voulu faire un SUMIF sur un classeur externe, après pas mal de recherche je me suis donc résolu à passer par un SUM(IF()), conseillé par le support microsoft himself pour les SUMIF sur des références externes. Lorsque je rentre la formule à la main je n'ai pas de soucis, ça fonctionne, mais le problème reste que maintenant je dois la rentrer dans ma macro, afin d'avoir des liens dynamiques vers mes autres classeur. En gros j'en arrive à rentrer cette formule :

Code:
Selection.FormulaArray = _
        "=SUM(IF('" & pathfichier & "\[Facture_No_1330000" & numeroavoir ".xls]Sheet 1'!C2=""MAIN D'OEUVRE"",'" & pathfichier & "\[Facture_No_1330000" & numeroavoir &".xls]Sheet 1'!C12,0))"

Ma formule est ici dans une boucle, avec la variable numeroavoir qui s'incrémente, afin que chaque ligne aille chercher ses données dans un classeur différent. Sur le principe je n'ai pas trop de soucis, ça fonctionne pour le reste de ma macro, le problème est que c'est la première fois que j'utilise cette formule matricielle SUM(IF()), qui complexifie pas mal la syntaxe... Du coup j'ai une erreur de type "Expected: end of statement", et je pense donc avoir fait une erreur dans l'écriture.

L'erreur se situe apparemment au niveau de l'expression Sheet 1'!C2=""MAIN D'OEUVRE"". Je vois bien que ça n'a pas l'air correct, mais comment faire alors pour écrire ma condition (qui est simplement que la cellule soit égale à "MAIN D'OEUVRE").


Voilà, je vous remercie d'avance pour votre aide !


Sur ce je fonce en rubrique présentation ! ;)
 

Discussions similaires

Réponses
2
Affichages
426

Statistiques des forums

Discussions
314 025
Messages
2 104 767
Membres
109 141
dernier inscrit
nathalie MARTIN