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 :

Pb avec sum if


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 163
    Par défaut Pb avec sum if
    Bonsoir à tous,
    J'ai un souci avec la fonction sum if, et j'ai regardé sur le forum mais je n'ai pas trouvé la réponse à ma question.
    Voici la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    sub macro()
     
    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 et bonne soirée

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Pour affecter à une cellule il faut utiliser la propriété Formula ou FormulaLocal suivant le cas.

    Un petit coup sur la touche et une recherche sur le forum te donnera les informations nécessaires.

    Starec

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 163
    Par défaut
    Oui c'est ce que j'avais fait au début mais j'avais quand même une erreur d'execution c'est pour çà que je ne comprends pas...

  4. #4
    Membre éprouvé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Par défaut
    Si tu utilises Formula => formule en anglais
    Si tu utilises FormulaLocal => Formule en français

    Sinon, tu as aussi l'option FormulaR1C1 pour un adressage relatif.

    Si après ça tu as encore une erreur, c'est ta formule qu'il faudra revoir.

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    J'ai fait quelques essais et constaté..
    Ajouter Adress, sinon c'est la valeur de la cellule qui est prise en compte
    et quand c'est la valeur de la cellule qu'il faut, en string ce n'est pas supporté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Range(Cells(6, 13), Cells(8, 20)).Address
    'et
    Val(Range(Cells(6, 13), Cells(8, 20)).text)
    Le SUMIF n'a pas fonctionné mais avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sheets("Feuil1").select
    cells(X,Y).select
    ActiveCell.FormulaLocal = "=SOMME.SI(
    Sur l'aide, ca fonctionne mais je n'ai pas réussi a adapter le critère avec autre chose qu'une comparaison chiffrée.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Cells(5, 12).Select
        ActiveCell.FormulaLocal = "=SOMME.SI(A1:A4;"">160"";B1:B4)"
    Je crois quil faudra soit passer par une macro, soit décomposer la fonction
    a moins que d'autres aient une solution.

    A+
    EDIT:
    Ca ne m'étonne pas que je ne suis pas parvenu à définir le critère....
    critère représente le critère, exprimé sous forme de nombre, d'expression ou de texte, qui détermine les cellules à compter. Par exemple, l'argument critère peut être exprimé sous une des formes suivantes : 32, « 32 », « >32 » ou « pommes ».

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 163
    Par défaut
    Ok merci,
    en faisant cette commande çà marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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 & ")"
    Merci beaucoup de votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment formater le resultat avec 2 chiffres avec SUM de SQL
    Par sondo dans le forum Bases de données
    Réponses: 15
    Dernier message: 23/06/2006, 14h41
  2. [SQLServer] Requête avec SUM
    Par FzF dans le forum Langage SQL
    Réponses: 3
    Dernier message: 18/05/2006, 16h19
  3. Réponses: 3
    Dernier message: 22/12/2005, 17h47
  4. [SQL Access] Problème avec Sum()
    Par badgam piero dans le forum Access
    Réponses: 5
    Dernier message: 12/12/2005, 16h00
  5. Pb récupération d'une somme avec SUM()
    Par momo99 dans le forum InterBase
    Réponses: 3
    Dernier message: 01/11/2005, 15h38

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