Fonction Subtolal et condition

Bonjour à tous,

j'aimerai avoir un peu d'aide sur un macro...

j'ai dans mon code la formule sous total comme ci-dessous :

Range("A3:I" & Range("A65536").End(xlUp).Row).Select
    Selection.Subtotal GroupBy:=3, Function:=xlStDev, TotalList:=Array(9), _
        Replace:=False, PageBreaks:=False, SummaryBelowData:=True

Mon soucis est avec "function" et "xlSdev".

Est ce que je peux mettre dans function du style :

si une seul valeur alors xlsum sinon xlsdev

Est-ce possible ou faut il que je passe par une solution de sous total.

Merci à vous

Bonjour

Sans fichier et comme l'interpréteur ne râle pas

Je rêve peut être mais à tester

Sub test()
Range("A3:I" & Range("A65536").End(xlUp).Row).Select
    Selection.Subtotal GroupBy:=3, Function:=IIf(Selection.Count / 9 = 1, xlsum , xlStDev), TotalList:=Array(9), _
        Replace:=False, PageBreaks:=False, SummaryBelowData:=True
End Sub

Sinon il faut sortir cette condition et affecter une variable

exemple

Sub Truc()
Dim Fonction As Integer
  Fonction = IIf(Selection.Count / 9 = 1, xlSum, xlStDev)

Range("A3:I" & Range("A65536").End(xlUp).Row).Select
    Selection.Subtotal GroupBy:=3, Function:=Fonction, TotalList:=Array(9), _
        Replace:=False, PageBreaks:=False, SummaryBelowData:=True
End Sub

Bon j'ai testé ça fonctionne pas...snif!!!

Pour le coup je laisse un fichier

Il faut juste savoir que le nombre de ligne est aléatoire.


Désolé je me suis trompé de fichier

Bonjour

Modifies la ligne correspondante

Fonction = IIf(Selection.Count / 9 = 2, xlSum, xlStDev)

Contrainte : Il faut que chaque ligne ait 9 données de A à I

Si ce n'est pas le cas, afin d'étudier une solution, fournis un VRAI fichier (avec des données)

Pour info la 1ère syntaxe est valable

Si ce n'est que la colonne I qui sera toujours remplie

essayes

Range("A3:I" & Range("A65536").End(xlUp).Row).Select
    Selection.Subtotal GroupBy:=3, Function:=IIf(Selection.Offset(, 9).Resize(, 1).Count = 2, xlSum, xlStDev), TotalList:=Array(9), _
        Replace:=False, PageBreaks:=False, SummaryBelowData:=True

Excuse moi Benzai,

je pensais que tu avais eu le bon fichier

Mais je crois que ta nouvelle solution ne fonctionne pas

Bonjour

Assez complexe car il peut y avoir de tout

Voir si cette solution te convient

Merci Benzai.

ça à l'air de fonctionner...Chapeau

A plus

Rechercher des sujets similaires à "fonction subtolal condition"