Bonjour,
Je viens de m’inscrire sur ce forum pour vous demander de l’aide.
Je vous remercie par avance du temps que vous allez prendre pour me répondre.
J’ai essayé depuis ce matin plusieurs formules mais aucune ne fonctionne et le j’avoue que je commence à ne plus avoir d’idée.
Voilà ce que je souhaite faire :
Sur ma feuille actuel
( Nommons la « Jérôme ») ,
je souhaiterais additionner toutes les cellules E22 de mon classeur
( exemple des feuilles en questions « Robert » « Patrice » «Hugo »)
mais uniquement lorsque la cellule G2 de ses feuilles (« Robert » « Patrice » «Hugo »)est égal a la cellule B5 de ma feuille actuel(« Jérôme »).
J’ai créé une feuille Début et une feuille Fin placé aux extrémités de mon classeur afin de pouvoir mettre dans ma formule « Début:Fin »
En fait je voudrais additionner en cellule D25 de ma feuille toutes les cellules E22 de toutes mes feuilles de mon classeur (ainsi que toutes les futures feuilles créé) mais uniquement lorsque la cellule G2 de ses feuilles est égale à la cellule B5 de ma feuillePour Forum.xlsx (33,2 Ko)
J’ai refait un petit document synthèse,
Ma question est qu’elle formule inscrire en B10 pour avoir ce résultat sachant que d’autres feuilles viendront s’ajouter au fil du temps.
Merci
Si un bon croquis vaut mieux qu’un long discours. Sur un forum bureautique, un petit fichier vaut mieux qu’une belle image.
Donnes nous plutôt le fichier, anonymisé s’il le faut, cela sera plus facile pour t’aider.
Cordialement.
Je pense qu’il faut faire appel au pro du VBA pour gérer ton problème au mieux.
N’étant pas l’un d’eux, malheureusement, je passe la main.
Cordialement.
Ci-joint ma version VBA
Attention à ta casse L’onglet dans lequel on met le résultat en B2 j’ai jerome44 alors que onglet « Pierre » en B3 j’ai Jerome44 ce n’est pas tout à fait la même chose l’un commence par un « j » l’autre par un « J » minuscule et majuscule
Dans mon traitement j’ai fais en sorte de m’affranchir de la casse mais pour un résultat attendu optimum il faut être toujours très Pour Forum 2.xlsm (28,4 Ko) précis
Cliques sur le bouton « Traitement » onglet « Jerome » résultat en B10 de cet onglet
Bonjour FFO,
Tout d’abord je te remercie pour ton aide.
Effectivement pour le J majuscule et minuscule c’est une erreur de ma part mais dans ma version de mon fichier original ces cases sont remplis automatiquement et il n’y aura donc pas de faute de la sorte.
Pour le reste j’ai rien compris lol.
il me faut sur chaque page que le résultat s’affiche en B10 de facon automatique.
Et la je comprend pas grand chose à ton bouton traitement
Tu souhaites un traitement qui fasse la somme de toutes les cellules B4 des onglets dont la cellule B3 porte le nom de la cellule B2 de l onglet Jérôme c est ce que j ai compris dans tes explications de l onglet jerome
Le traitement du bouton réalise cette opération conformément a ces souhaits que tu as formule dans la cellule B10 de l onglet jerome
J ai peut être mal compris à toi de me dire de manière précise
Si tu souhaites le même fonctionnement pour tous les onglets si ceux ci sont formaté au niveau présentation de la même façon que l onglet jerome différentes solutions possibles
Soit un bouton à chaque onglet
Soit à chaque onglet tu vas chercher la macro et de l exécuter
Soit on utilise la methode du double clique sur la cellule B10 de chaque onglet
Soit sur un bouton dans un onglet je traite en une seule fois tous les onglets
A toi de me dire le but étant d alimenter correctement les cellules B10 de tous les onglets
Merci encore,
Effectivement tu as bien compris et je dois ajouter quelques précisions:
Toutes les feuilles seront identiques avec des noms différent (jerome,robert,isabelle…) et leur cellule B2 porterons un nom différent.
Le but est effectivement d’alimenter les cellules B10 de tous les onglets mais e façon permanente. Sans avoir a cliquer sur un bouton. Que cela se fasse automatiquement et mis a jour en temps réel. Il faut également que cette formule soit appliqué sur toutes les nouvelles feuilles qui seront créé.
Je sais ca fait beaucoup mais j’ai l’impression que tu n’es pas loin de me sauvé la. Ca fait 2 jours que je bloque et que je ne peux plus avancer sur mon projet…
Attention une solution VBA si elle fait des miracles a l inconvénient par rapport à la solution des formules d une nécessité d un déclenchement bouton ou action de la part de l utilisateur double clique clique droit etc…
Un bouton centralisé qui met tout à jour en une seule fois n est pas une tâche insurmontable quant à cliquer dessus au grès du besoin
Certes cela nécessite d y penser
De tout façon pas le choix si on doit passer par VBA
On peut exécuter le traitement de manière automatique à l ouverture du classeur mais tout ajout d onglet ou modification de ceux existants sur les données concernées demandera de renouveler son passage donc le bouton centralisé me semble une bonne option
Il faut donc choisir un système de déclenchement
La balle est dans ton camp à toi de me dire
Bonjours
Nouvelle version ci-joint
Le traitement est global sur tous les onglets qui en cellule A10 ont la donnée « Résultat » et une cellule B2 non vide
J’ai mis un bouton « Actualisation somme » onglet « AAAAAAPourFormule »
Manuellement en cliquant sur ce bouton on exécute la procédure qui remet à jour toute les sommes pour tous les onglets en cellule B10
J’ai rajouté pour chaque onglet un automatisme qui se déclenche dés qu’une des cellules B2/B3/B4 est modifiée et d’exécuter cette même procédure
Pour tout nouvelle onglet à créer il faut impérativement faire une copie d’un onglet existant pour conserver cet automatisme
Pour cela sélectionner un onglet existant possédant l’automatisme sur le nom de l’onglet clique droit choisir dans le menu l’option Déplacer ou copier puis dans la fenêtre qui vient de s’afficher côcher Créer une copie et OK
Un nouvel onglet est créé à l’identique de celui qui a été sélectionné portant le même nom avec un indice en fin entre paranthèses
Il suffit de renommer ce nouvel onglet créé
Ainsi l’automatisme a suivi cette copie
Ci-après cette nouvelle version
A ta disposition pour d’éventuelles améliorations
Je n’ai pas d’autre solution à te proposer compte tenu de la mouvance de la structure du fichier liée à l’ajout ou peut être suppression d’onglets
Une solution par formule n’est pas envisageable dans ce contexte
Je partage l’avancement de mon problème qui n’est pas encore totalement solutionné.
Sur un autre forum on a proposé une solution qui fonctionne sur mon fichier exemple (Aide Formule du forum) mais que je n’arrive pas à transposer sur mon fichier original( Version pre-final Test) ou j’en ai besoin.
--------------------------------------------------------------------------------------------------------------------------------------FICHIER : Aide Formule du forum
Etape 1 :
Sur une feuille (type synthèse ou autre)
=SI(LIGNES($1:1)<=NBVAL(Nf);INDEX(Nf;LIGNES($1:1));"")
Pour créer Nomsfeuilles et afficher tous les noms de feuilles dans une colonne (j’étends la formule)
Etape 2 :
Dans mon fichier (Aide Formule du forum)
Je souhaite en cellule B10 Additionner toutes les cellules B4 des feuilles ou la cellule B3 est égal à ma cellule B2.
La formule mis en place (en B10) qui fonctionne sur ce fichier est :
=SOMMEPROD(SOMME.SI(INDIRECT(Nomsfeuilles&"!B3");B2;INDIRECT(Nomsfeuilles&"!B4")))
--------------------------------------------------------------------------------------------------------------------------------------FICHIER : Version pre-final Test
Etape 3 :
J’ai copié la formule suivante :
=SI(LIGNES($1:1)<=NBVAL(Nf);INDEX(Nf;LIGNES($1:1));"")
sur mon fichier original ( Version pre-final Test)
et j’obtiens bien la liste de toutes mes feuilles.
Etape 4 :
Je souhaite en cellule D25 (au lieu de B10) additionner toutes les cellules E22 (au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5 (au lieu de B2).
La formule que j’ai mis en place en D25 est la suivante :
=SOMMEPROD(SOMME.SI(INDIRECT(Nomsfeuilles&"!G2");B5;INDIRECT(Nomsfeuilles&"!E22")))
Mais au lieu d’obtenir le résultat j’obtiens #NOM ?
Si quelqu’un peut me dire pourquoi et m’apporter la solution ca serait le top mon problème serait réglé une bonne fois pour toute.
Ps : je joins mes 2 fichiers
Merci FFO mais si je peux trouver une façon d’automatiser tout ca ce serait nettement plus pratique pour moi. D’avance je te remercie pour les précisions que tu pourrais m’apporter et pour le temps que tu m’as déja consacré.
Ma dernière solution VBA que je t’ai proposée est automatique si à chaque création d’onglet tu suis la procédure très simple que je t’ai décrite aucune intervention manuelle hors mis la mise en place du nouvelle onglet
Je t’ai rajouté un bouton à actionner éventuellement en secours en cas de besoin
Dommage que tu ne t’y intéresses pas car à mon sens plus simple que la mise en place de toutes ces formules dans tous les onglets
Les formules c’est très bien car le résultat est instantanée mais de mon point de vue alourdi le fonctionnement des onglets et réagit très mal dés que l’on touche à la structure (Colonnes lignes onglets)
Maintenant à toi de choisir
Pour Zebulon : Nomsfeuille est en cellule T1 . Donc si tu peux m’aider pour ma formule je suis preneur .
Pour FFO : Je te remercie pour ton travail . Cela marche très bien si je change une valeur en B4 la somme s’actualise instantanément et sans manipulation dans la cellule B10 concerné. Si je créé une nouvelle feuille (copie / Renommer) cela fonctionne également parfaitement. Du coup 2 questions me viennent à l’esprit
1er/ A quoi sert le bouton Actualisation somme en S3 (AAAAAApourformule) ?
2eme/ Pourrais je en savoir un peu plus sur le fonctionnement de ton outil car je vais t’expliquer mon but final :
Dans mon fichier Version pre-final TEST. Je vais créer une feuille BASE ( pour faire des copies et les renommer à chaque fois). Dans le temps des nouvelles feuilles seront créé régulièrement sur ce modèle base.
Sur cette feuille je souhaite plusieurs chose : en D25 Additionner cellule E22(au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5(au lieu de B2) en D26Additionner cellule F22(au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5(au lieu de B2) en D27Additionner cellule G22(au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5(au lieu de B2) en D28Additionner cellule H22(au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5(au lieu de B2) en D29Additionner cellule I22(au lieu de B4) des feuilles ou la cellule G2(au lieu de B3) est égal à ma cellule B5(au lieu de B2)
Voila pourquoi j’étais parti sur une formule comme ca il me suffisait de modifier quelques donnés pour chaque cellule. Mais j’ai vu que ton système fonctionnait bien également donc j’aimerais le comprendre et pouvoir l’adapter pour ces différentes cellules.
L’objectif est de créér une feuille BASE qui sera par la suite dupliqué et qui s’apatera parfaitement au différents contenu rentré en cellule G2 et B5
Voila c’est peut être un peu fouilli, j’espère que j’ai été assez claire.
Si tu as une solution qui peut s’adapter a mon problème je suis preneur.