IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Formule matricielle en VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    136
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 136
    Par défaut Formule matricielle en VBA
    Bonjour à tous,

    Voila j'ai des formules matricielles à utiliser, et je n'arrive pas à les faires calculer en les automatisant en vba, et je ne voit absolument pas l'erreur que j'ai fait ...

    voila ma formule en vba :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("STAT_GOOD").Range("C36").FormulaArray = "=COUNT(IF((test!A3:A15000>20)*(test!A3:A15000<30);test!A3:A15000))"
    est ce que quelqun aurait une idée ?

    Cordialement

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    En regardant l'aide sur formulaArray
    il faut l'appliquer sur une plage de donnée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Sheet1").Range("A1:C5").FormulaArray = "=3"
    Tu l'applique sur une simple cellule

    Essaye de mettre seulement formula a la place
    ou formulalocal si tu veux écrire ta formule avec les mots clefs français

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    136
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 136
    Par défaut
    Merci pour ta réponse,
    J'ai essayé de mettre seulement "formula", et il me donne le message d'erreur suivant :
    Erreur définie par l'application ou par objet
    Sinon si j'utilise "FormulaLocal" est ce que ce sera quand même une formule matricielle ?

    ( Car en tapan directement la formule dans la cellule, je n'obtien pas le même résultat quan j'appuis sur "entrée" ou "ctrl+shift+entrée" )

    Cordialement

  4. #4
    Membre éclairé
    Inscrit en
    Juin 2009
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 41
    Par défaut
    bonjour,
    moi ya un ptit truc qui me chiffone (enfin après c'est ptete normal que ce soit comme ça):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =COUNT(IF((test!A3:A15000>20)*(test!A3:A15000<30);test!A3:A15000))
    donc en gros pour ton if:
    si (laplageA3:A15000 est supérieur a 20) multiplié par (laplageA3:A15000 inférieur a 30) alors afficher la plage A3:A15000
    et le count doit renvoyer quel résultat ?

    si tu pouvai m'éclairer, parce que j'ai un peu de mal a comprendre

  5. #5
    Membre confirmé
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    136
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 136
    Par défaut
    Non en fait je voudrais compter le nombre de valeur qui sont comprise entre 20 et 30 dans la plage de A3 à A15000.

  6. #6
    Membre confirmé
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    136
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 136
    Par défaut
    J'ai pourtant utiliser "FormulaArray" pour une autre formule et sa fonctionne trés bien ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    formule = "=SUM((RJ_H>STAT_REJECT!C21)*(RJ_H<STAT_REJECT!G21))"
    Range("D56").FormulaArray = formule
    Y aurait il une différence ?
    Cordialement

Discussions similaires

  1. [XL-2010] Formule matricielle et VBA
    Par zaza45 dans le forum Excel
    Réponses: 2
    Dernier message: 24/09/2013, 16h38
  2. Formule matricielle VBA
    Par ninette24 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/04/2013, 15h15
  3. [XL-2007] Challenge : formule matricielle ne marche plus quand elle est insérée par VBA
    Par Tchesko dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 01/10/2012, 11h29
  4. vba - problème enregistrement de formule matricielle
    Par philppe27 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/02/2012, 17h41
  5. [VBA-E] - formule matricielle
    Par jimbololo dans le forum Macros et VBA Excel
    Réponses: 37
    Dernier message: 09/06/2006, 14h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo