Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

SOMMEPROD et SOUS.TOTAL -> VBA

  • Initiateur de la discussion Initiateur de la discussion totor2027
  • 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 !

T

totor2027

Guest
Bonjour,

Dans une cellule j'ai cette formule :
=SOMMEPROD(($D$12:$D$1000=$H4)*SOUS.TOTAL(9;DECALE R($C$12;LIGNE($C$12:$C$1000)-LIGNE($A$12); )))

Je voudrais pouvoir la convertir en VBA afin de l'exécuter à partir d'un bouton.

Comment faire ?

Si quelqu'un à une idée, je suis preneur.

PS j'ai mis volontairement un espace entre le dernier point-virgule et les 3 parenthèses fermantes pour na pas avoir de smilles !

Cordialement
 
Re : SOMMEPROD et SOUS.TOTAL -> VBA

Bonjour,

Ce que je fais quand je veux le code VBA d'une formule :

je lance l'enregistreur de macro, je tape ma formule dans une cellule.
Et je regarde le code VBA !

@+

Cordialement
 
Re : SOMMEPROD et SOUS.TOTAL -> VBA

Bonjour,

Après quelques tests en utilisant l'enregistreur de macro, la formule générer est :
Range("J3").Select
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT((R12C4:R1000C4=RC8)*SUBTOTAL(9,OFFSET(R12C3,ROW(R12C3:R1000C3)-ROW(R12C1),)))"

correspondant à la formule de la cellule :

=SOMMEPROD(($D$12:$D$1000=$H3)*SOUS.TOTAL(9;DECALER($C$12;LIGNE($C$12:$C$1000)-LIGNE($A$12); )))

Le problème est que je voudrais pas injecter la formule dans la cellule mais le résultat du calcul.

Si quelqu'un à une idée.

Cordialement
 
Re : SOMMEPROD et SOUS.TOTAL -> VBA

re :

toujours dans la même idée :

tu complètes ta macro (ou tu en démarres une autre que tu mettras au bout de la première) avec la macro suivante à enregistrer :

Selection de la page qui va bien,
selection de la cellule qui contient la formule,
edition copier
edition collage spécial/ valeur
Echap
selection de la cellule avec le résultat ( ça c'est en option, mais j'aime bien arriver sur la dernière cellule modifiée)

Tu peux même rajouter un code macro en début de ta macro initiale pour nettoyer la cellule qui contient la formule.

@+
Cordialement
 
Re : SOMMEPROD et SOUS.TOTAL -> VBA

Je viens de compléter la macro avec un copier / collage spécial -> valeur .

Ca fonctionne bien, merci à vous deux.


J'ai par ailleurs continué mes recherches.

Pour l'utilisation du sous.total en vba :

Range("L3").Select ' sélection de la celulle affichant le résultat
ActiveCell.Value = Application.Subtotal(9, [G:G]) 'somme des valeurs affichées dans la colonne G.

Pour l'utilisation du somprod en vba :

ActiveCell.Value = Application.WorksheetFunction.SumProduct(Application.CountIf([zone], [Type]), [duree])

Évidemment ce dernier exemple ne marche pas dans mon tableau, je n'est pas définie les zones "zone, type et duree".

J’aimerais quand même savoir comment ont peut utilisé Application.SumProduct avec Application.Subtotal uniquement par vba sur un exemple théorique.

Colonne A : nom, pouvant se répéter N fois
Titi
Tata
Toto
Colonne B : lieux, liste contrôlée
Dedans
Dehors
Nulle part
Colonne C : valeur, décimale libre
Nombre de sous dans la poche

J’aimerais savoir en utilisant les filtres automatique d’excel sur la colonne B (lieux), combien de sous titi, tata et toto on dans leurs poches.


Ca pourra toujours servir dans d’autres tableaux.


Cordialement
 
Re : SOMMEPROD et SOUS.TOTAL -> VBA

Re :

je ne comprends pas ta dernière demande ou plus exactement quel est le problème ?

Tu peux enregistrer ( ou pas) les commandes Données/Trier/ Colonnekivabien/ Données /Sous total/ etc.
Si tu avais un fichier test...

@+ te lire
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
11
Affichages
730
D
Réponses
4
Affichages
1 K
Réponses
2
Affichages
822
M
Réponses
1
Affichages
1 K
R
Réponses
3
Affichages
4 K
R
N
Réponses
5
Affichages
3 K
Nicocotte125
N
Réponses
14
Affichages
2 K
B
Réponses
0
Affichages
1 K
Bullrot
B
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…