Ajouter une colonne qui calcul la moyenne d'une plage variable
Bonjour tous le monde,
J'ai atteins mes limites en vba et j'ai besoin d'un coup de pouce
J'ai un tableau dans lequel j'ajoute, chaque semaine, une colonne qui a en titres le numéro de la semaine en cours (ligne 2), et le nom du mois associé (ligne 1). Mon tableau se termine par une colonne nommée "TENDANCE" (ligne 1) et toutes mes colonnes sont ajoutées avant celle-ci.
Je souhaite ajouter, après la dernière semaine du mois et avant la colonne "TENDANCE", une colonne qui calcule la moyenne des colonnes du mois, et je souhaite également copier-coller en valeur la colonne qui se retrouvera avant celle-ci.
J'espère que je suis clair... je vais de toute façon ajouter mon fichier au message.
Pour le moment, j'ai réussi à insérer une colonne avant la colonne "TENDANCE et à copier-coller en valeur la colonne précédente.
Pour cela, je me sers d'une colonne type, qui contient les formules =moyenne, qui se trouve sur un autre onglet et que je copie et insert avant la colonne "TENDANCE"... l'idéal serait bien sûr que j’ai un code vba qui insert la colonne et les formules.
Le gros problème que j'ai, sans parlé du fait que mon procédé est sans doute un peu tordu, c'est que je ne sais pas comment faire pour que la moyenne se calcule en fonction du titre des colonnes (même nom de mois) qui est variable d'un mois à l'autre... des fois 4 colonnes, des fois 5 colonnes.
Voici le code vba que j'utilise aujourd'hui (voir macro "Ajouter_colonne_moyenne_mois" dans mon fichier:
Dim C As Range
Application.ScreenUpdating = False
With Worksheets("Suivi retard")
Set C = .Rows(1).Find("TENDANCE")
If Not C Is Nothing Then
Sheets("Paramètres Suivi Retard").Columns("D:D").Copy
.Columns(C.Column).Insert shift:=xlToRight
Application.CutCopyMode = False
With C.Offset(, -2).EntireColumn
.Copy
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End With
End If
End With
Application.ScreenUpdating = True
End Sub
Pouvez-vous m'aider svp?
Merci
Bonjour,
Comprends pas la colonne moyenne n'est pas rentré en fixe pourquoi vouloir l'ajouter par vba