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 :

calcule de Moyenne de case diverse


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 38
    Par défaut calcule de Moyenne de case diverse
    mon problème :

    Je voudrais calculer dans une cellule (sur une feuille de calcul appelée "Graph") la moyenne d'une partie de la colone "P" de la feuille de calcul "Resultat".
    En faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("Graph").Range("J37").FormulaR1C1 = "=AVERAGE(Resultats!R[433]C[6]:R[472]C[6])"
    Ca marche et je me retrouve avec la moyenne de la ligne 433 à 472. Ok

    Mais moi je ve passer ces "bornes" inférieur et supérieur en paramètre.
    les bornes sont stoquée dans "J35" et "J36"

    du coup j'ai écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Dim Moy_inf As Double, Moy_sup As Double,    
        Moy_inf = Sheets("Graph").Range("J35").Value
        Moy_sup = Sheets("Graph").Range("J36").Value
        Sheets("Graph").Range("J37").FormulaR1C1 = "=AVERAGE(Resultats!R[& Moy_inf]C[6]:R[& Moy_sup]C[6])"[/
    Mais ... ça marche pas ! !

    du coup j'en appel ç la communauté !

    Merci

  2. #2
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Fais toi une petite userForm sur laquelle il y a un RefEdit et un bouton de validation (et peut-être un bouton Annuler pour sortir...). Dans ta macro, tu applelle cette UserForm et tu y récolte la valeur du RefEdit pour la suite de ta macro.

  3. #3
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Essai comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sheets("Graph").Range("J37").Formula= "=AVERAGE(Resultats!" & Moy_inf & ":" & Moy_sup & ")"

  4. #4
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 38
    Par défaut où est définit la colonne ?
    jfontaine,

    merci pour ta réponse, mais dans le code que tu m'a donner il n'y a pas de référence à la colone dans laquelle sont selectionnée les cellules donc on veu faire la moyenne ?

    pour mémoire je veux faire la moyenne de "P,Moy_inf" à "P,Moy_sup"

    je ne vois pas dans ton code ce qui indique que l'on parle de la colonne "P" ?

    Merci

  5. #5
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    C'est pa un p mais une perluette qui est le symbole de concaténation de chaînes. Les noms de variables font références à des objets Range.

    Je maintiens ma proposition de permettre à l'utilisateur de sélectionner les cellules (ou plages de cellules) avec un composant RefEdit (dans la palette d'outils de l'éditeur de UserForm, le dernier outil).

  6. #6
    Membre averti
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 38
    Par défaut je ne comprent pas tout !
    merci Zaza pour ton message mais il est un peu trop complex pour moi !

    qu'est ce qu'une perluette ?

    en fait je ne veux pas que l'utilisateur puisse aller selectionner les cellules à "moyenner" car la plages peux représenter plusieur centaine de cellules sur une feuille différente, pas très aréable d'utilisation !

    Moi je veu qu'a la lecture d'un graphique, il remarque visuellement la zone de la courbe qui est linéarisable et qu'il rentre les abscisse de cette zone (Moy_inf et Moy_sup) pour que la macro lui calcule la moyenne

    J'ai écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Moyenne()
     
        Dim Moy_inf As Double, Moy_sup As Double, Interval_point As Double
     
        Inteval_point = Sheets("Resultats").Range("B4").Value
        Moy_inf = Sheets("Graph").Range("J35").Value
        Moy_sup = Sheets("Graph").Range("J36").Value
        MsgBox Interval_point & "  " & Moy_inf & "  " & Moy_sup
     
            If Moy_inf <> 0 & Moy_sup <> 0 Then
                Sheets("Graph").Range("J37").Formula = "=AVERAGE(Resultats!P" & Moy_inf & ":P" & Moy_sup & ")"
            End If
     
    End Sub
    et ça marche putôt bien !

Discussions similaires

  1. [VBA-E] problème de calcul de moyenne
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/04/2006, 17h13
  2. [Oracle] Calcul de moyenne par module
    Par naazih dans le forum Langage SQL
    Réponses: 14
    Dernier message: 27/04/2006, 14h38
  3. Programmation Shell avec Red Hat Calcul de moyenne
    Par jcpoulard dans le forum Linux
    Réponses: 3
    Dernier message: 22/02/2006, 22h08
  4. methode qui calcul une moyenne du traffic
    Par siry dans le forum Développement
    Réponses: 7
    Dernier message: 05/05/2005, 17h16
  5. calculer une moyenne avec une requete externe
    Par allowen dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/01/2005, 16h02

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