fonction average sur VBA

  • Initiateur de la discussion Initiateur de la discussion julien974
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

julien974

XLDnaute Occasionnel
Bonjour le forum,

J’aimerai avoir de l’aide concernant la fonction moyenne vba. J’aimerais faire la moyenne des coefficients de toute la colonne F et la mettre dans la dernière cellule de cette même colonne. Tout en sachant que j’insère tous les jours une nouvelle ligne…

Par ailleurs, si vous avez des idées pour améliorer ma macro insert ligne…

ci joint le fichier

Merci d’avance les amis,

Julien 974
 

Pièces jointes

Re : fonction average sur VBA

bonjour,

pour la moyenne, il n'est pas nécessaire de l'insérer dans la macro, il suffit que sur ta feuille tu fasse la moyenne de F1 à F2, et comme tu insères avant F2, la moyenne se réactualise automatiquement.
pour la macro, je peux toujours te proposer ça, mais ce n'est pas ma spécialité :
Code:
Sub insereligne()
    Rows("2:2").Insert Shift:=xlDown
    Rows("3:3").Copy
    Range("A2").Select
    ActiveSheet.Paste
    Range("A2,B2,E2").Select
    Selection.ClearContents
    Range("A2").Select
End Sub
à+

><>
 
Re : fonction average sur VBA

Bonjour,
tu peux essayer avec ce code, qui t'insère ta ligne, et met la formule dans la dernière cellule de la colonne F :

Code:
Sub Macro1()
    Rows("2:2").Copy
    Rows("2:2").Insert Shift:=xlDown
    Range("A2:B2,E2").ClearContents
    [F65000].End(xlUp).FormulaR1C1 = "=AVERAGE(R2C6:R[-1]C)"
End Sub
 
Re : fonction average sur VBA

Bonjour,

Remplace ta macro par celle ci-dessous puis attribue lui ton bouton.
Code:
Sub ajouter()
'Macro pour XLD Julien74 - lle 27/03/08 - Dan
Dim Ligne As Integer
With activesheet
Ligne = .Range("A65536").End(xlUp).Row
.Range("A" & Ligne).EntireRow.Insert
.Range("D" & Ligne + 1).Copy Destination:=.Range("D" & Ligne)
.Range("F" & Ligne + 1).Copy Destination:=.Range("F" & Ligne)
Range("F" & Ligne + 2).FormulaR1C1 = "=AVERAGE(R2C6:R[-1]C)"
End with
End Sub
Amicalement

Dan
 
Re : fonction average sur VBA

salut,

bhbh, merci, j'avais pas pensé qu'on pouvait copier avant d'nsérer, pourtant je l'utilise en manuel...
Code:
Sub Macro1()
    Rows("2:2").Copy
    Rows("2:2").Insert Shift:=xlDown
à+

><>
 
Re : fonction average sur VBA

bonsoir,

merci à tous pour vos réponses!

Je vais essayer d'insérer tout ç dans mon fichier.

Si vous avez d'autres suggestions, n'hésitez pas à m'en proposer.

Ouvert à toute amélioration continue, je vous souhaite une bonne soirée...

Julien974
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
1 K
Réponses
1
Affichages
1 K
Retour