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 :

Pérenniser un code VBA


Sujet :

Macros et VBA Excel

  1. #41
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Jean-Philippe André Voir le message
    Hum,

    pour les boutons, as-tu cree un userform ? si tu veux proposer une plus-value graphique, cree un ruban personnalise
    A ce stade de son apprentissage, je lui proposerais de se contenter de boutons sur la feuille Excel... ... Même si ton conseil est très judicieux pour professionnaliser son appli par la suite...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  2. #42
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 30
    Points : 7
    Points
    7
    Par défaut
    @Jean-Philippe André :

    Non du tout, je n'utilise pas d'UserForm, pour mon cas, je n'en vois pas l'utilité.
    Même si ça fait plus joli, mon code est à 95% du tri, organisation et traitement de données.
    Il n'y a donc rien à faire apparaître à l'utilisateur à part quelques Inputbox pour renommer les graphiques ou choses du genre.

    @Pierre Fauconnier :

    Bonjour Pierre, j'ai compris ta remarque mais je ne vois pas comment je peux appeler à l'aide d'un bouton un module... ?
    D'après ton exemple ce serait :
    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
     
    ' Je place le programme nommé : "Manger une pomme" dans le Module 1 qui est renommé : Pomme
    ' Puis j'intègres les différents programmes : 
     
    Sub Manger une pomme
    Acheter une pomme
    Rincer une pomme
    Eplucher une pomme
    End Sub
     
    'JUSTE AU DESSUS, je ne vois pas comment je peux appeler mes différents Sub qui se trouvent EN DESSOUS, pour que "Sub Manger une pomme" réalise l'ensemble des étapes et donc que je relie un seul bouton à ce Sub là.
     
     
    Sub Acheter une pomme
    Code ..... 
    End Sub
     
    Sub Rincer une pomme
    Code ..... 
    End Sub
     
    Sub Eplucher une pomme
    Code ..... 
    End Sub

  3. #43
    Invité
    Invité(e)
    Par défaut
    Pour appeler un sub, il suffit d'utilise un Call

    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
     
     
    Sub Manger une pomme
    Call Acheter une pomme
    Call Rincer une pomme
    Call Eplucher une pomme
    End Sub
     
    Sub Acheter une pomme
    Code ..... 
    End Sub
     
    Sub Rincer une pomme
    Code ..... 
    End Sub
     
    Sub Eplucher une pomme
    Code ..... 
    End Sub

  4. #44
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Tu n'appelles pas le module. Tu appelles la fonction MangerLaPomme qui elle-même appelle les fonctions qui préparent le fruit dans un ordre logique.

    L'intérêt est que tu peux concentrer tes tests sur chaque fonction spécifique. Par exemple, tu testes la fonction NettoyerLaPomme en lui passant différents arguments:
    • Tu passes une pomme saine;
    • Tu ne passes pas de pomme;
    • Tu passes une pomme pourrie;
    • Tu passes une poire;
    • Tu passes deux pommes;
    • Tu passes de la compote;
    • ...



    Et tu regardes comment cette "petite" fonction spécifique se comporte... Normalement, seul le fait de passer une pomme saine devrait te valoir un test spécifique. L'avantage est que si demain le processus de nettoyage d'une pomme doit être modifié, tu ne modifies que cette fonction puis tu refais ta batterie de tests pour être certain que les modifs dans cette fonction n'ont pas dégrader le processus général. Ta modification est donc circonscrite aux seules lignes de code concernées et suite aux tests, ton appli générale reste stable. C'est, en d'autres mots et de façon imagée, ce que te disait el_slapper.

    Citation Envoyé par Oudouner Voir le message
    Pour appeler un sub, il suffit d'utilise un Call [...]
    Les Call ne sont pas nécessaires
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #45
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Les Call ne sont pas nécessaires
    Oh, je n'avais jamais remarqué que l'on pouvait faire sans, merci de l'information .

  6. #46
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut
    Citation Envoyé par Oudouner Voir le message
    Pour appeler un sub, il suffit d'utilise un Call
    Quand j'ai besoin d'un Call, c'est uniquement de  CallByName  !  

    ___________________________________________________________________________________________________________
    Je suis Paris, Egypte, Stockholm, London, Istanbul, Berlin, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

Discussions similaires

  1. afficher un graphique dans word à partir de mon code vba
    Par guysocode dans le forum VBA Word
    Réponses: 2
    Dernier message: 07/11/2005, 14h15
  2. Réponses: 2
    Dernier message: 27/10/2005, 15h51
  3. Réponses: 4
    Dernier message: 13/10/2005, 14h44
  4. Réponses: 3
    Dernier message: 06/09/2005, 10h27
  5. Comment creer une procédure stockée à partir d'un code VBA?
    Par Alcor020980 dans le forum Connexion aux bases de données
    Réponses: 4
    Dernier message: 24/05/2005, 19h55

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