Bonjour Martin, Bernard
autre solution (effectivement, Bernard, la manière est bizarre)
Tu sélectionnes ta zone et...
Sub moyenner()
lig_deb = Selection.Row
col_deb = Selection.Column
col_fin = Cells(lig_deb, 256).End(xlToLeft).Column
lig_fin = Cells(65536, col_deb).End(xlUp).Row
'exclusion si pas de valeurs numériques
If Application.Sum(Range(Cells(lig_deb, col_deb), Cells(lig_fin, col_fin))) = 0 Then
MsgBox "plage vide"
Exit Sub
End If
' calcule de la moyenne
moy = Application.Average(Range(Cells(lig_deb, col_deb), Cells(lig_fin, col_fin)))
End Sub
A+
Michel (at work)