XL 2016 faire un sous total par colonne masqué

Hervé

XLDnaute Barbatruc
bonjour à tous :)

Je me remets au vba et je vous confirme qu'il n'est pas bon de vieillir.

je souhaite faire un total par colonne suivant un argument et si la colonne n'est pas masquée.

on ne peut pas utiliser l'argument 109 de sous total car il ne fonctionne que pour les lignes (si je me souviens bien)

j'ai donc crée une fonction perso qui bien sur ne marche pas

auriez vous l'amabilité d'ouvrir mon fichier pour mieux comprendre.

je ne suis pas contre une solution par formule

Bien à vous et restez beaux et belles
 

Pièces jointes

  • Classeur1.xlsm
    18.8 KB · Affichages: 12

Efgé

XLDnaute Barbatruc
Bonjour Hervé :) , le fil, le forum

Une proposition en changeant le deuxième argument (numéro de ligne ou se trouvent les en-têtes de colonnes):
VB:
Public Function soustotalhm1(plage_a_sommer As Range, Ligne As Long, Arg As Range)
Dim c As Range
    For Each c In plage_a_sommer
        If Columns(c.Column).Hidden = False Then
            If Cells(Ligne, c.Column) = Arg Then
                Total = Total + c
            End If
        End If
    Next c
soustotalhm1 = Total
End Function

Le problème est qu'Excel ne recalcule pas les formules quand on masque des colonnes...

Cordialement
 

Pièces jointes

  • Herve2.xlsm
    22.6 KB · Affichages: 10

Efgé

XLDnaute Barbatruc
Re Bonjour Job
Je ne dit pas que les formules ne s'actualisent pas dans les colonnes masquées, mais que le fait de masquer une ou des colonnes n'amène pas Excel à recalculer l'onglet.
Même en ajoutant à ma proposition de ce matin
VB:
Application.Volatile
Reprends l'exemple et masque ou affiche des colonnes, les formules ne s'actualisent pas ;)

Cordialement
 

Hervé

XLDnaute Barbatruc
salut à tous

désolé pour ma réponse tardive

merci pour vos retours, ceci fonctionne, hélas, il est vrai que le volatile ne fonctionne pas.

je masque les colonnes par un code et applique donc un application.calculate en fin de procédure.

mais même ceci, ne fonctionne pas toujours (cas complexe).

seriez vous si il est possible d'avoir une fonction pour ce job, genre sommeprod et sous.total (109.....) ?

a plus
 

Discussions similaires

Réponses
6
Affichages
302
Réponses
12
Affichages
540

Statistiques des forums

Discussions
311 725
Messages
2 081 943
Membres
101 849
dernier inscrit
florentMIG