[VBA Excel] Problème de syntaxe pour écriture de moyenne

[Résolu]
Signaler
Messages postés
9
Date d'inscription
mardi 3 juin 2008
Statut
Membre
Dernière intervention
12 juin 2008
-
Messages postés
9
Date d'inscription
mardi 3 juin 2008
Statut
Membre
Dernière intervention
12 juin 2008
-
ReBonsoir !
je crée un nouveau sujet car j'ai ENCORE oublié de completer le titre et je n'arrive pas à éditer le précédent.
Désolé si ça irrite un modérateur

juste une petite question de syntaxe rapide.
je voudrais faire une moyenne au milieu d'une boucle elle même imbriquée dans une autre boucle (je me comprends, c'est déjà ça)

Puis je utiliser la syntaxe suivante :
moy = _
                    Application.WorksheetFunction.Average(mafeuil.Range(Cells(i, j), Cells(2, j)))

tout marche dans mon programme sauf ça, et c'est un peu le centre névralgique du prog...
en
fait je ne peux pas lui déclarer des cellules fixes genre Average(range
"A1", range "A2") du fait de la présence de mes boucles

j'ai également essayé ceci, piqué sur un forum et adapté vite fait
moy = "=AVERAGE(" & Cells(i, j).Address & ":" & Cells(2, j).Address & ")"

voilà, je dois avoir une erreur dans ma syntaxe...
si vous avez une idée

merci
bonne nuit

3 réponses

Messages postés
9
Date d'inscription
mardi 3 juin 2008
Statut
Membre
Dernière intervention
12 juin 2008

et bien je vais m'auto-répondre
Application.WorksheetFunction.Average(Sheets("Feuil2").Range(Cells(i, j), Cells(2, j)))  marche impec !

Merci tout de même
bonne soirée !
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

Option Explicit

Sub gyil()
    Dim moy As Double
    
moy = Application.WorksheetFunction.Average(Sheets("Feuil1").Range(Cells(1, 1), Cells(2, 1)))
                    
' j'ai
mis 1 dans A1 et 3 dans A2, ça marche nickel, moy = 2
End Sub
~
<small>Mortalino ~ [code.aspx?ID=39466 Colorisation
automatique]</small>

Pas de problème chez moi, mais regarde ton code, juste après la parenthèse de la fonction Average, tu as mis un mafeuil !

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
9
Date d'inscription
mardi 3 juin 2008
Statut
Membre
Dernière intervention
12 juin 2008

Merci Mortalino!

En fait j'ai mal posé ma question (l'heure tardive surement)
ce que j'essaie de lui faire faire, c'est de lui désigner une plage de cellules, entre Cells(i, j) et Cells(2, j), et non 2 cellules distinctes

En gros dans mon tableau, j'ai des colonnes : date, semaine, température, tout est trié en ordre croissant, et je voudrais qu'il fasse la moyenne des températures d'une meme semaine. Le j est là car j'ai d'autres paramètres en plus de la température. Voilà c'est juste pour illustrer ce que je veux faire, je ne demande en aucun cas le code de tout ça

merci