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 :

amelioration de code par un alias


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut amelioration de code par un alias
    bonjour à tous

    dans le code ci dessous je choisis parmi une liste pour remplir une box (operation_box).

    cette information me permet de sélectionné tout d'abord une macro avec le code ci dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    If operation_box.Value = "parfum" Then parfum
    If operation_box.Value = "parapharmacie" Then parapharmacie
    If operation_box.Value = "bijou" Then bijou
    If operation_box.Value = "cartouche" Then cartouche
    If operation_box.Value = "livre" Then livre
    If operation_box.Value = "farine" Then farine
    If operation_box.Value = "cosmetique" Then cosmetique
    If operation_box.Value = "consommable" Then consommable
    If operation_box.Value = "garantie" Then garantie
    If operation_box.Value = "photo" Then photo
    If operation_box.Value = "ustensille" Then ustensille
    If operation_box.Value = "vin" Then vin
    et par la suite de remplir certaine feuille bien précise (feuille qui sont masqué)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
            Sheets("parfum").Visible = True
            Sheets("bijou").Visible = True
            Sheets("farine").Visible = True
            Sheets("cartouche").Visible = True
            Sheets("livre").Visible = True
            Sheets("parapharmacie").Visible = True
            Sheets("cosmetique").Visible = True
            Sheets("consommable").Visible = True
            Sheets("photo").Visible = True
            Sheets("ustensille").Visible = True
            Sheets("vin").Visible = True
               If operation_box.Value = "parfum" Then Sheets("parfum").Select
               If operation_box.Value = "bijou" Then Sheets("bijou").Select
               If operation_box.Value = "farine" Then Sheets("farine").Select
               If operation_box.Value = "cartouche" Then Sheets("cartouche").Select
               If operation_box.Value = "livre" Then Sheets("livre").Select
               If operation_box.Value = "parapharmacie" Then Sheets("parapharmacie").Select
               If operation_box.Value = "cosmetique" Then Sheets("cosmetique").Select
               If operation_box.Value = "consommable" Then Sheets("consommable").Select
               If operation_box.Value = "garantie" Then Sheets("garantie").Select
               If operation_box.Value = "photo" Then Sheets("photo").Select
               If operation_box.Value = "ustensille" Then Sheets("ustensille").Select
               If operation_box.Value = "vin" Then Sheets("vin").Select
    est-il possible d'améliorer ce code grâce à un alias ou une autre technique ?

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Points : 824
    Points
    824
    Par défaut
    Bonsoir,

    Sous reserve d'avoir compris ce que tu veux faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        Dim s As String
        s = operation_box.Value     'Recupere le choix
        Application.Run s           'Lance la macro sélectionné
        With Sheets(s)
            .Visible = True         'Affiche la feuille
            .Select
        End With
    Cordialement,

    Tirex28/

  3. #3
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut
    c'est exactement ce principe

    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] Amelioration dun code
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 28
    Dernier message: 06/06/2007, 13h51
  2. Combien un programmeur tape-t-il de lignes de code par jour, en moyenne ?
    Par petdelascar dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 31/07/2006, 18h13
  3. Changer la page de code par défaut de l'invite de commande
    Par guipom dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 06/04/2006, 11h06
  4. Partage de code par plusieurs instances
    Par a.tintin dans le forum MFC
    Réponses: 3
    Dernier message: 08/08/2005, 14h03
  5. Remplacer plusieurs colonnes par un 'alias'
    Par zestrellita dans le forum Langage SQL
    Réponses: 7
    Dernier message: 22/04/2004, 16h51

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