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 :

VBA Average if


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mai 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2013
    Messages : 1
    Par défaut VBA Average if
    Bonjour tt le mode ,

    Je viens de ma lancer avec VBA excel pour mon stage et j'ai un problème avec la fonction AVERAGE if .
    PS: tous les données sont dans AVR_DATA , j'ai trier et enlever les doublons et donc récupere les pays dans Best_seller et le résultat finale c dans base zone ki contien déja les pays sur une colomne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    For h = 3 To p + 1 : (car c pour chaque pays (p c le nombre de pays)
     
     
    Sheets("Base_Zone").Cells(h, 2).Value = Int((WorksheetFunction.AverageIf(Range("'AVR_DATA'!L2:L" & Range("A65536").End(xlDown).Row), "Best Seller@" & Range("A" & h) & "@201320", Range("'AVR_DATA'!F2:F" & Range("A65536").End(xlDown).Row))) * 100) + 1
     
    Sheets("Base_Zone").Cells(h, 3).Value = Int((WorksheetFunction.AverageIf(Range("'AVR_DATA'!L2:L" & Range("A65536").End(xlDown).Row), "Medium Seller@" & Range("A" & h) & "@201320", Range("'AVR_DATA'!F2:F" & Range("A65536").End(xlDown).Row))) * 100) + 1
     
    Sheets("Base_Zone").Cells(h, 4).Value = Int((WorksheetFunction.AverageIf(Range("'AVR_DATA'!L2:L" & Range("A65536").End(xlDown).Row), "Slow Seller@" & Range("A" & h) & "@201320", Range("'AVR_DATA'!F2:F" & Range("A65536").End(xlDown).Row))) * 100) + 1
     
     
    juskà ici ça marche et kan je rajoute ça ça marche plus (ya plus rien)
     
     
    Sheets("Base_Zone").Cells(h, 7).Value = Int((WorksheetFunction.AverageIf(Range("'AVR_DATA'!L2:L" & Range("A65536").End(xlDown).Row), "NP launched < 3m@" & Range("A" & h) & "@201312", Range("'AVR_DATA'!F2:F" & Range("A65536").End(xlDown).Row))) * 100) + 1
    pour best seller , med ,... il y a toujours au moins une valeur dans le tableau de data mais pour NP launched il se peu qu'il yen a pas du tout. En gros le but c de faire un tableau dynamique avec toutes le moyennes selon les pays et la catégorie du produit et c trés compliqué parce que toutes mes données changent chaque semaine et il faut que j'en prend compte ... j'éspere que vous pouvez m'aider et que c'est assez clair


    D'avance merci ...

  2. #2
    Membre extrêmement actif
    Avatar de NVCfrm
    Homme Profil pro
    Administrateur Système/Réseaux - Developpeur - Consultant
    Inscrit en
    Décembre 2012
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur Système/Réseaux - Developpeur - Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 037
    Billets dans le blog
    5
    Par défaut
    bonjour,
    La valeur renvoyée par P+1 correspond elle exactement au nombre de pays?
    Si c'est le cas l'initialisation de la boucle avec h = 3 to P + 1 ne fera pas le nombre de pays souhaité. La boucle prendra fin quand h = (p + 1) -3.
    exemple terre à terre: de 5 à 12 + 1 fera 8 tours et non 12.
    Peut -être que ces remarques t'aideront.

Discussions similaires

  1. [XL-2007] Calculer la moyenne d'une colonne en VBA. Fonction average?
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/08/2009, 10h15
  2. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15
  3. [VBA-E] [Excel] Tri automatique
    Par bovi dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/10/2002, 10h19
  4. [VBA-E] [Excel] Filtrer le donnees d'une sheet
    Par donia dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/09/2002, 10h55
  5. problème avec VBA
    Par Delph dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2002, 13h15

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