Re : effectuer des regroupement et des comptes (Excel VBA)
Salut Poizer,
Me revoilà!
poizer à dit:
(...) et pour ne pas vous embete je vous ai donne juste un exemple et moi je vais generaliser ca par la suite.
Dans fich2.xlsx j'ai donné un extait de la BD dans la feuille1 et le resultat souhaite dans la feuille2
Merci et desole pr le derangement (...)
T’inquiète pas Poizer, tu nous dérange pas du tout
😉
Si l'on vient ici, c'est de notre propre chef, pour aider ceux qu'on peut avec nos maigres connaissances. Tu n'as donc pas à t'excuser de prendre de notre temps. C'est de bon cœur qu'on t'en fait profiter (et purement désintéressé).
De plus c'est tout à ton honneur de vouloir généraliser la solution à ton problème. Cela te permettra de voir si tu as compris la réponse, et ainsi pouvoir la faire tienne.
Je vois que tu as obtenu des solutions en VBA. Donc plus besoin de moi?
Pour information, tu as deux solutions via le VBA :
-> demander à ta macro d'écrire automatiquement
les formules qui vont bien (comme fait par la macro de JCGL)
-> demander à ta macro d'écrire automatiquement
le résultat.
Première solution :
* Avantage
Tu peux voir les formules sur ta feuille excel, donc voit d'un simple coup d’œil comment est obtenu le résultat dans la cellule...
A chaque modification dans ta base de donnée, le résultat sera actualisé automatiquement (sauf si tu rajoute des lignes - auquel cas il faudra relancer la macro).
* Inconvénient
Comme pour la solution que je t'ai proposé au tout début, la macro utilise la fonction
SOMMEPROD() TRES GOURMANDE en ressource. Concrètement, si tu as environ 3-500 formules SOMMEPROD(), à chaque fois que tu modifiera ta base de donnée, Excel se figera environ 3 secondes à chaque fois. Donc si tu as plusieurs milliers de lignes, il faudra soit t'armer de patience, soit enlever le "calcul automatique (avec tous les problèmes qui en découlent : oubli de rafraichissement avant "impression", ...).
Deuxième solution :
* Avantage
Aucun délais d'attente, chaque fois que tu modifiera tes données.
* Inconvénient
Tu ne verras pas les formules, donc l'internaute moyen ne saura pas comment tu arrive à ce résultat (mais est-ce important?)
Les résultats se mettrons à jours que lorsque tu lancera la macro, donc si tu oubli de la lancer avant d'imprimer/utiliser/analyser ton tableau "résultat", tu ferras fausse route.
Bon WE