Somme.Si

Résolu/Fermé
Artur - 14 nov. 2011 à 09:09
 Artur - 14 nov. 2011 à 14:23
Bonjour,

J'essaye de créer une macro mais j'ai un problème avec la fonction somme.si

voici le code :
ActiveCell.FormulaR1C1 = _
        "=SUMIF(Export!R[-6]C[-5]:R[682]C[-5],Balance!RC[-5],Export!R[-6]C[4]:R[682]C[4])"

Mon problème étant que je souhaite arriver a une formule comme celle ci :

=SOMME.SI(Export!B2:B690;Balance!E8;Export!K2:K690)

Mais je n'arrive pas à le retranscrire en macro ...

Merci et bonne journée !

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 714
14 nov. 2011 à 09:33
bonjour

Ceciç devrait résoudre ton souci :

ActiveCell.FormulaLocal = _
        "=SOMME.SI(Export!B2:B690;Balance!E8;Export!K2:K690)" 
1
Merci !
0
J'ai un autre soucis avec ce code :

Range("I1").Select
    ActiveCell.FormulaR1C1 = "=si(D2<Commande!$B$1;Balance!E2;"")"


Et je ne vois pas où est le problème sachant que sur Excel ça passe et en VB il ne veut pas ... ?
une ligne jaune apparait sur la ligne ActiveCell ...

Merci !
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
14 nov. 2011 à 11:50
Bonjour,

le langage VBA est un langage anglais. Du coup, il n'accepte pas le "=SI". Si tu veux garder ta syntaxe, il te faut utiliser ActiveCell.FormulaLocal qui te permettra d'écrire la formule dans la langue locale.

Cordialement.
0
Merci chossette... mais même problème

avec ce code :

ActiveCell.FormulaLocal = _
        "=si(D2<Commande!$B$1;Balance!E2;"")"
0
chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 308
14 nov. 2011 à 11:57
Si ça ne fonctionne pas, VBA te renvoie un message d'erreur. Quel est ce message ?
0
Erreur d'exécution 1004

Erreur définie par l'application ou par l'objet


et après la ligne jaune sur la ligne précédemment envoyé
0