Somme.Si

Résolu
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

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    bonjour

    Ceciç devrait résoudre ton souci :

    ActiveCell.FormulaLocal = _
            "=SOMME.SI(Export!B2:B690;Balance!E8;Export!K2:K690)" 
    1. Merci !
      1. 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 !
      2. Contributeur
        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.
      3. Merci chossette... mais même problème

        avec ce code :

        ActiveCell.FormulaLocal = _
                "=si(D2<Commande!$B$1;Balance!E2;"")"
      4. Contributeur
        Si ça ne fonctionne pas, VBA te renvoie un message d'erreur. Quel est ce message ?
      5. 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é