IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

lier une macro a une liste en cascade par code vba


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2016
    Messages : 6
    Par défaut lier une macro a une liste en cascade par code vba
    Bonjour a tous,

    je vous avoue que la j'en peux plus =)
    depuis une semaine j'essais de créer une interface sur excel afin de rendre plus efficient le serveur de mon entreprise.
    le but est que sur excel il y ai une interface ou la personne remplisse deux champs en cascade : une ville et un type de dechet, et qu'en actionnant un bouton un macro se réalise et remplisse un CERFA automatiquement (avec variables sinon c'est pas drole).
    utiliser le userforme pas de problème actuellement, quoique programmer la cascade me donne du fil a retordre, mais c'est surtout lier une macro au dernier choix de mon arborescence qu me complique la tache. Car j'avais imaginé que chaque choix ouvre une macro différente (par la fonction SI, ET ALORS) mai la sur la programmation je galère un max malgrès tous les tutos vus et revus =)

    si vous aviez quelques conseils se serait formidable !!

    je vous remercie mille fois par avance pour votre aide précieuse !!


    Pygargue

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Pourquoi se compliquer la vie à passer par un user_form ?
    Il serait beaucoup plus simple de créer les deux listes déroulantes dans une feuille de calcul avec la validation de données.

    Ensuite, tu mets un modèle de CERFA (sincèrement, j'ignore à quoi ça ressemble) dans un autre onglet.
    Tu modifies les valeurs dans ce modèle en fonction du résultat des listes déroulantes.

    Je ne sais pas exactement ce qu'il faut modifier mais je suis presque prêt à parier que tout ça pourrait se faire sans macro, avec quelques tables de correspondance et quelques RECHERCHEV.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2016
    Messages : 6
    Par défaut
    Salut Menhir !!!!

    avant tout je te remercie sincèrement du temps que tu prend pour me répondre !!

    pour répondre a ton interrogation, j’avais commencé par faire une cascade simple sur excel, c'est après que je suis passé sur le userform (uniquement pour le coté un peu plus joli).
    par contre j'ai rencontré le même problème lors de ma cascade (simple) sur excel, je n'arrivais pas a lier chaque choix possible de l'arborescence a une macro, sais tu comment faire ?

    merci encore !!!

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je me répète, je ne comprends pas pourquoi tu veux faire une macro différente pour chaque choix puisque, d'après ce que je comprends, tu veux juste récupérer des valeurs en fonctions d'autres valeurs.
    Ca, c'est exactement ce que peux faire des fonctions comme EQUIV / INDEX ou RECHECHEV.

    Pour pouvoir te répondre plus clairement, il faudrait que tu en dises plus sur le "remplissage" de ce CERFA.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2016
    Messages : 6
    Par défaut
    dans notre fonctionnement le cerfa sert a identifier tous l'historique d'un suivit de déchet (je vais essayer de te le joindre en doc). il est donc composé de la nature du déchets (dangereux ou pas), du lieux de production du déchet, du lieux de l’enlèvement, du siret de la société de l’enlèvement, des accréditations préfectorales etc...
    Mais comme tu dois le comprendre pour chaque déchets (de la cartouche d'imprimante aux boues d'épurations) se sont différentes sociétés qui prennent en charge leurs traitements, et donc font appel a différents documents (accréditations, contrats etc....).
    La volonté de mon administration serait que chaque employé (des différentes stations d'épurations) puissent sortir le bordereau de suivit de déchet (BDS= cerfa) avec très très peu de connaissances en informatiques. Car en général cet aspect là est très loin de leur corps de métier, il est donc compliqué pur eux de retrouver le bon document, malgré un intranet bien organisé, et cela abouti la plus part du temps a des erreurs de manipulations informatiques (suppression de données , désorganisation des fichiers, ou simplement incapacité de trouver et remplir le document).
    Donc la création de ce fichier (ou la plus part des données seront bloqué a l'utilisateur lambda) servirait a gagner en efficacité ainsi qu'en efficacité (que ce ne soit pas la direction qui soit obligée de faire ces docs un par un).
    Mon raisonnement étai donc de créer un simple excel avec une cascade contenant deux critères: la ville de production du déchet et le type de déchet lui même. Cela parait simple d'utilisation et a la portée de tous le monde s'il est placé en tête dans l'intranet. l'Aboutissement de ce choix en cascade serait l'apparition d'un bouton qui lancerait la macro correspondante au déchet et a sa localisation. Dance cette macro (spécifique a chaque déchet) j'enregistrerais la procédure pour remplir chaque Bordereau (avec des données actuelles dates, numéro du bordereau etc) et la dernière étape de la macro serait l'impression du document.

    normalement je t'ai mis ma base de fichier excel qui est juste un exemple, tu trouveras une première ébauche du tableau pour remplir le BDS, et la seconde page (interface) serait celle qui serait "publique", mon objectif serait dans un premier temps de joindre le bouton de macro au premier choix possible de la cascade et de lier un autre au second choix (les cascade ne sont pas terminées mais c'est juste pour l'exemple après je répéterais la manip)
    Fichiers attachés Fichiers attachés

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2016
    Messages : 6
    Par défaut
    voila les trois solutions que j'ai réussie a faire aujourd'hui,
    mais ça ne fonctionne pas bien je pense qu'il me manque un détail qui me fait tout bugger, ou alors c'est normal que les macros ne se déclenchent pas toute seules ( ? ) .....
    le but est juste de remplir le tableau a droite page 2, c'est un peu simplifier par rapport au travail final mais après je pense qu'il faudra juste refaire les macros adaptées a l'emploie de la société.
    en fait après réflexion je pense que c'est une boucle que j'ai essayé de reproduire mais je ne sais pas si on peu en faire avec autant de choix possible....
    il faudrait aussi que je rajoute l'apparition d'un bouton en fin de macro qui servirait juste a lancer l'impression.

    la solution trois marche sauf que c'est toujours la macro cbon1 qui sort...je regarde de mon coté si je trouve l'erreur

    voila dis moi ce que tu en pense.
    je te remercie encore sincèrement de ton aide

    pygargue
    ps j'avoue que je n'ai pas réussie a trouver a quoi servait la fonction : Private Sub Worksheet_SelectionChange(ByVal Target As Range), si tu as quelques infos je suis preneur.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Ou est l'erreur - ou une différence entre une fonction et une macro ?
    Par Daranc dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/12/2009, 07h35
  2. Creer une macro via une macro
    Par GlasgowBoy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/05/2009, 14h54
  3. Réponses: 2
    Dernier message: 24/02/2009, 17h40
  4. écrire le résultat d'une macro dans une cellule d'une feuille à choisir
    Par ririrourou dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/06/2008, 11h56
  5. [VBA Excel] Appliquer une macro sur une celulle contenant une valeur
    Par tchauviere dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 21/01/2008, 10h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo