Pb avec Sum if

Résolu
arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007 - 30 oct. 2007 à 09:25
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 31 oct. 2007 à 23:41
Bonjour, j'ai un souci avec la fonction Sumif, et je ne comprends pas pourquoi à vrai dire.
Voici la macro
Sub macro()<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 

l = Sheets("feuille2").Cells.SpecialCells(xlCellTypeLastCell).Column

m = Worksheets("feuille2").Cells(Cells.Rows.Count, "B").End(xlUp).Row

 

For i = 6 To m

Worksheets("feuille1").Cells(i, 9) = "=SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)) & ",'feuille1'!" & Cells(i, 2) & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)) & ""

next

 End sub

Merci beaucoup de votre aide et bonne journée

9 réponses

arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007
30 oct. 2007 à 15:50
Ok çà marche

"=Worksheets("feuille1").Cells(i, 9).Formula="=SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)).Address & ",'feuille1'!" & Cells(i, 2).Address & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)).Address & ")"

Par contre une dernière question si je souhaite additionner cette valeur à la précédente comment dois je faire?
J'ai testé.
Worksheets("feuille1").Cells(i, 9).Formula="=Worksheets("feuille1").Cells(i, 9)+ SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)).Address & ",'feuille1'!" & Cells(i, 2).Address & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)).Address & ")"
Mais malheureusement çà ne marche pas.
Merci.
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
30 oct. 2007 à 09:51
Worksheets("feuille1").Cells(i, 9).Formula =
0
arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007
30 oct. 2007 à 09:56
Oui pardon j'avais également mis ce que tu m'as donné comme réponse et çà ne marchait toujoyrs pas
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
30 oct. 2007 à 10:08
un message d'erreur ?

après, a voir si tu dois pas utiliser FormulaLocal (je ne te le conseille pas)...
dépend des parametres regionnaux.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007
30 oct. 2007 à 10:25
Oui j'ai vu çà sur le forum, pour formulalocal, Mais ce que je comprends pas c'est qd je regarde les paramètres k,l et i ils sont correct, donc je ne pense pas que çà vienne de çà. Merci
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
30 oct. 2007 à 11:56
et bien le probleme semble etre ta formule finale.....

"=SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)) & ",'feuille1'!" & Cells(i, 2) & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l))

tu veux, je pense faire :
"=SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)).Address & ",'feuille1'!" & Cells(i, 2).Address & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)).Address
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
30 oct. 2007 à 16:14
pas simple simple...

une petite fonction VBA serait la bienvenue pour eclaircir tout cela...
plutot que de passer par un SUMIF...

regarde ce que tu concatène...

Worksheets("feuille1").Cells(i, 9).Formula="=Worksheets("feuille1").Cells(i, 9)+ SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)).Address & ",'feuille1'!" & Cells(i, 2).Address & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)).Address & ")"

il faudrait au pire avoir :


Worksheets("feuille1").Cells(i, 9).Formula="=" & Worksheets("feuille1").Cells(i, 9).Value & "+SUMIF('feuille2'!" & Range(Cells(6, 13), Cells(k, l)).Address & ",'feuille1'!" & Cells(i, 2).Address & ",'feuille2'!" & Range(Cells(6, l), Cells(k, l)).Address & ")"

même si c'est pas joli joli et que ca ne fonctionne surement pas...
0
arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007
30 oct. 2007 à 16:59
Oui je confirme que c'est pas évident et que çà ne marche pas non plus.lol.Je vais essayé de trouver une réponse...
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
31 oct. 2007 à 23:41
Tu ne peux pas intégrer des termes comme Worksheets à l'intérieur des guillemets de ta formule

<strike>Worksheets("feuille1").Cells(i, 9).Formula= "=Worksheets("feuille1").Cells(i, 9)+</strike>
Worksheets("feuille1").Cells(i, 9).Formula= "=" & Worksheets("feuille1").Cells(i, 9) +

MPi²
0
Rejoignez-nous