Calcul et remplir des tableaux via VBA

Salut tout le monde

ci-joint fichier concernant les calculs à partit des feuilles de base de données

je vous demande de bien vouloir de m'aider à établir un code vba qui me permet de calculer et remplir les cellules colorées de la feuille calculs comme l'exemple du premier tableau

17classeur1.xlsx (44.58 Ko)

merci infiniment

Bonjour Akssel

Si je peux me permettre, "je veux" est un impératif (soit un ordre)

Tout le monde est bénévol ICI, il n'y a donc aucun impératif à te répondre, merci de rectifier SVP

Bonjour Akssel,

Merci d'éviter les MP surtout dans ils sont sans aucune formule de politesse,

2021 01 29 02h18 20

De tels agissements ne pourront être tolérés plus longtemps

Un petit peut de lecture de la charte du forum pourrait faire du bien
https://forum.excel-pratique.com/excel/a-lire-avant-de-poster-charte-du-forum-et-informations-utiles...

Ceci dit, vous avez fait l'effort de reformuler votre demande, j'en ferai de même

Voici votre fichier avec les formules ultra simple, faut-il connaitre ou vouloir connaitre Excel.

@+

Bonjour,

arrête d'interpeler en mp, tu as posté un fichier, attends que les contributeurs le prennent

tu n'as pas besoin de macro pour cela, par contre mets tes données en tableau

9classeur1.xlsx (18.48 Ko)

Bonjour Bruno

j'ai l'impression qu'on n'a pas le même fichier !

ce qui est fabuleux c'est d'avoir reçu un mp (on n'est sans doute pas les seuls) avant même la date du post !

Salut Steelson

Effectivement, je me suis trompé de fichier

Bien à toi

Salut Akssel, salut Bruno, salut Steelson,

Aksell, Bruno et Steelson ont raison : lorsque tu postes une demande, attends quand même quelques heures avant de contacter plusieurs membres en MP, sans formule de politesse

Salut les as de la formule,

vous serez étonnés de lire que, bien que le camarade Akssel demandait du VBA, je me suis d'abord efforcé de fabriquer une formule que je voulais générique pour la coller à la volée dans chaque cellule.

=SOMMEPROD(('ACHAT HUILES '!K2:K200=DECALER(A1;-4+LIGNE();-2+COLONNE()))*'ACHAT HUILES '!L2:L200)

- Mais, pourquoi cette partie (la générique en question) fonctionne-t-elle seule mais pas dans la formule complète ??

=DECALER(A1;-4+LIGNE();-2+COLONNE())

- pour mon information personnelle, quelle est la formulation pour préciser la portée exacte de K2:K200 ? Je n'ai plus retrouvé ce calcul de fin de colonne...
Les tableaux structurés (auxquels j'arrive, si, si...) ont évidemment l'élégance d'être la meilleure solution.

Merci de vos lumières, mes seigneurs...


A+

Salut Curulis57,

C'est le problème avec l'utilisation de SOMMEPROD()

La plage ne peut pas être calculée, elle doit déjà être définie

@+

Merci, Bruno !

...c'est sûrement la meilleure façon d'amener l'utilisateur à employer les tableaux structurés...

@Akssel,

ta présentation, toute jolie soit-elle, sera, avec le temps, ingérable et, avec l'amélioration de tes connaissances Excel, inconfortable et restrictive.
Tout le monde te dira pourtant que je préfère VBA mais, là, tu pousses la complication un peu loin.

Je continue la démonstration de mes éminents compagnons un cran plus loin avec tes jolis tableaux transformés en une première ébauche de tableau structuré.
Je ne saurais trop te conseiller de te pencher sur le fonctionnement de ces tableaux et de la prise en compte automatique :
- de sa position sur la feuille : tu peux le déplacer comme tu veux ;
- du changement du nombre de lignes ou colonnes : tu ajoutes des lignes simplement en tapant une nouvelle donnée sous le tableau ;
- les formules s'adaptent automatiquement à ces ajouts de lignes ;
- ces mêmes formules se recopient d'elles-mêmes sur la colonne lors d'une correction, par ex.

Un tel tableau te permettra d'obtenir des graphiques, TCD et autres stats sans problèmes.
Crois-en les experts (je n'en suis pas, hein!) de ce site : c'est la panacée.
Tu ne le regretteras pas !

4akssel.xlsx (19.31 Ko)


A+

Bon les gars, c'est un peu ce que j'avais posté cette nuit https://forum.excel-pratique.com/excel/calcul-et-remplir-des-tableaux-via-vba-152185#p940188 avant que Curulis ne se couche !

- Mais, pourquoi cette partie (la générique en question) fonctionne-t-elle seule mais pas dans la formule complète ??

=DECALER(A1;-4+LIGNE();-2+COLONNE())

Tu n'aurais pas oublié de bloquer A1 en $A$1 ?

Salut Steelson,

Bon les gars, c'est un peu ce que j'avais posté cette nuit avant que Curulis ne se couche !

J'ose espérer que tu n'as pas pris mon post pour du vol éhonté de ton génie !? J'essaie, au contraire, de m'aligner sur ce "standard"... grâce à vous tous et votre insistance !

Pour la formule que je tentais, je crois plutôt, selon mes lectures et la réponse de Bruno, que SOMMEPROD est conçu de façon vachement carrée par les concepteurs de Microsoft.
Ce sera sans doute plus souple, plus tard...

5classeur1.xlsx (44.34 Ko)


A+

Rechercher des sujets similaires à "calcul remplir tableaux via vba"