Sélection valeur liste déroulante - VBA

Bonsoir à tous et à toutes,

Dans le cadre de mon travail, j'aurais besoin de me faciliter la tâche par l'utilisation d'une macro

Hors je ne suis pas expert en la matière et ne sais utiliser que les macros d'enregistrement.

Je m'explique :

J'ai dans un classeur 2 feuilles..

Dans la feuille 1 j'ai une liste de 19 valeurs texte.

Dans la feuille 2 en "A2" j'ai une liste déroulante qui renvoie aux 19 valeurs de la feuille 1. Je précise que j'ai créée la liste déroulante de manière classique par l'outil de validation des données.

En fonction de la valeur que je sélectionne dans ma liste déroulante, j'ai toute une plage de données juste en dessous qui se met à jour avec des chiffres différents.

Dans cette feuille 2, j'ai besoin de copier coller en valeur à la suite les plages de données dont les nombres changent en fonction de la valeur sélectionnée de la liste. C'est à dire que j'ai besoin de faire 19 copier coller sans compter l'attente générée à chaque fois que je fais F9 pour que les données se mettent à jour. Ce fichier va "vivre" et sera mis à jour très régulièrement. Vous comprenez donc bien comment ce serait chronophage et fastidieux de devoir à chaque fois faire tout ça "a mano".

Ma requête est donc la suivante :

J'aimerais une macro qui à chaque fois que je l’exécute sélectionne chaque valeur de la liste déroulante, recalcule les données pour chacune de ces valeurs, sélectionne la plage de données et la colle en valeur à la suite dans cette même feuille de façon à avoir 19 plages en cascade.

Sur plusieurs forums dont celui-ci j'ai essayé de trouver la solution à mon problème et malgré mes recherches n'ai rien trouvé correspondant à celui-ci ou s'avérait inadapté ou trop complexe au vu de mon niveau en VBA.

J'ai également demandé l'aide à distance à un ami qui s'y connaît un minimum en VBA pour avoir déjà programmé dessus mais cela n'a pas été concluant.

J'espère que j'ai été assez clair.

Si vous avez besoin d'informations supplémentaires pour m'aider n'hésitez pas à me demander.

En espérant que vous réussirez à m'aider.

Merci

Un fichier avec des données non confidentielles mais significatives. Un fichier sur lequel tu indiques clairement le résultat attendu.

Merci

135fichier-test.xlsx (17.84 Ko)

Voici en pièce jointe un fichier test.

J'ai un onglet "base facture" qui alimente la plage grisée "A2:M14" de l'onglet "base données". Cette plage correspond à l'imputation budgétaire des factures par type de dépenses représenté par un code (100, 200, etc...). En "A2", on a la liste déroulante permettant de choisir le service afin de voir ce que ce dernier a consommé sur différents postes de dépenses, ce qui met à jour la plage grisée.

Ce qu'on peut voir c'est qu'ici j'ai copié collé en valeur en cascade chaque plage de données afférent à chaque service après avoir sélectionné à chaque fois dans la liste le service. Ce que j'aimerai c'est une macro qui me sélectionne chaque service et copie colle en dessous les plages dès que je l'exécute.

C'est un fichier test donc simple mais en réalité avec 19 services avec à chaque fois 250 codes différents c;'est pas la même histoire ^^

Merci pour votre aide

Bonjour,

Une proposition à étudier.

Cdlt.

275fichier-test.xlsm (33.43 Ko)

Merci pour le temps que vous avez pris pour concocter cette solution.

Mais ça ne répond malheureusement pas à mes besoins. Je ne veux pas un service par onglet cela en ferait trop j'ai 19 services. J'aimerais avoir tout sur la même plage car la feuille alimente ensuite un tableau d'un autre fichier.

L'utilisation du TCD n'est également pas pratique en réalité dans mon cas.

Si quelqu'un a une autre solution correspondant pleinement à ma demande initiale qu'il la partage

En vous remerciant.

Cdt.

Re,

Une nouvelle proposition à étudier.

Cdlt.

368jeremy1601.xlsm (31.24 Ko)

Bonjour,

Désolé de répondre si tardivement.

Ca convient mieux mais je trouve le code très compliqué si j'ai besoin de le manipuler en cas de modifications.

J'ai réussi à faire une macro plus simple du coup qui je pense pourrait être simplifiée mais pour le moment ça convient.

Je garde le fichier test dans un coin le jour où je comprendrai mieux VBA. Je compte m'auto-former d'ailleurs par l'intermédiaire du site.

Encore merci beaucoup votre aide.

Cdt.

Jérémy

Bonjour,

Si tu as une procédure équivalente et plus simple, il serait intéressant de la soumettre au forum.

Cdlt.

Bonsoir,

Quand je dis plus simple, c'est dans le sens où je la comprends et où je sais la manipuler.

Je pense néanmoins qu'elle est lourde et pourrait être allégée.

Si ça vous intéresse d'y jeter un coup d'oeil je la mets sur la discussion demain

Cdt.

Jérémy

Rechercher des sujets similaires à "selection valeur liste deroulante vba"