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 :

VBA: quelle méthodologie?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut VBA: quelle méthodologie?
    Bonjour,


    Je suis passionnée de VBA depuis environ 1 ans.

    J'arrive à créer des applications et ça m'aide beucoup, mais je sens bien que je suis trés trés brouillon.....

    (Copie colle des extraits que je trouve sur le net, enregistreur de macro parfois, variables pas toujours utilisées, )...

    J'ai vu des programmes trés efficaces sur le net et qui m'ont trés bien construits...

    Comment puis je être plus performante dans la méthodologie ?

    Quelles sont les règles à respecter ?

    Comment procéder au début ?

    MERCI pour vos lumières !!!

  2. #2
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 344
    Par défaut
    C'est un vaste sujet

    Déjà, regarde les tutos et les sources qu'il y a sur ce site, ça te permettra de comprendre un peu comment les programmes sont écrit ici, et proprement

    Ensuite, et pour apprendre, tu as fait la bonne chose : tu t'es inscrit sur ce site !

    Tu apprend beaucoup ici par les réponses des personnes compétentes qui répondent aux gens dans le besoin. Tu peux toi-même t'y frotter, si tu en as besoin

    Par ailleurs, le VBA est assez vaste : tu travailles sur Excel ? Access ? Word ?

    ta question est finalement assez vaste Pour ma part, j'ai appris sur le tas, en postant ici, en lisant les réponses des autres membres, en essayant d'aider les autres, ce qui me permet d'avancer dans mes connaissances VBA
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  3. #3
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Tout à fait d'accord avec Illight
    En lisant les problèmes, en aidant sur d'autres, en regardant les différentes réponses de chacun,... c'est ce qui m'a permis d'avancer... et pas mal de pratique, d'essais et erreurs...

  4. #4
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut EXACT !!!!
    L'aide des forums m'a été beaucoup utile, j'ai consulté aussi de nombreux tutos, et j'ai aussi beaucoup beaucoup bossé....

    Mais je sens aujourd'hui que je bog un peu, que je n'ai pas de base solides...

    Je travaille exclusivement sur VBA EXCEL


    J'ai vu par exemple un programme de comptabilité (je suis dans la compta), dans lequelle plusieurs private sub d'un userform renvoie sur un seul sub d'un module, les opérations étant ensuite dinstingué par des case.

    Mes modules contiennent toujours plusieurs procédures, je ne fais pas trop de renvoi (par exemple pour la mise en forme) et j'utilise souvent plusieurs procédures presques identiques....

    Etant autodidacte, j'ai l'impression d'avoir sauter dans la boite et pris outils par outil mais sans trop les reliés entre eux.... du coup j'ai pleins d'outils dans tout les sens , surement certains qui font doublons, certains inutiles, trop gros....



    Bref, je sais pas si une méthodologie existe vraiment , par exemple :

    Créer un module pour la declaration des variables
    un autre pour les functions, qui utilisent plusieurs variables et peux être donc utiliser pour plusieurs procédures (moi je crée autant de fonction que j'en ai besoin)
    un autre pour déclarer les types ou formats....
    .....




    Vous êtes perdus ????

    Je crois que je m'exprime comme je crée des codes....

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Je ne suis pas absolument certain sous VBA (mais je pense que oui), mais sous VB6 ou précédent, chaque module est chargé lors d'un appel à quelque partie de celui-ci, pas avant.

    Pour explications, disons que tu as un module qui calcule, un qui met en page, un qui sert au démarrage de l'application,... seul celui qui démarre l'application est chargé au départ. Lorsque tu cliques un bouton qui appelle un calcul, le module de calcul est chargé en mémoire et lorsque tu veux imprimer, celui de la mise en page/impression est chargé.

    Tout ça pour dire que de séparer le code en différents modules peut accélérer le processus et être moins gourmand au départ si c'est bien structuré.

    Et c'est valable pour les variables. Un module, lorsqu'il est appelé, trouve l'espace mémoire pour toutes les variables contenues dans celui-ci. Donc, inutile de déclarer les variables un peu partout dans le code d'une Sub. Elles sont toutes en mémoire de toutes façons.

    On pourrait donc penser à créer des modules "spécialisés" et les importer au besoin dans chacun de nos programmes. J'y ai pensé souvent, mais... je ne l'ai jamais mis en pratique...

  6. #6
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut merci pour vos réponses
    Oui "Parmi", je pense effectivement que ta réponse m'éclaire un petit peu...aprés, compliqué de mettre en place, mais ça vient en pratiquant,


    Merci de votre participation. Je cloture le sujet ...

    A bientot

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/07/2012, 22h07
  2. [VBA-E]DatePart ? Quelle est la règle ?
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/05/2010, 12h17
  3. Réponses: 8
    Dernier message: 20/05/2008, 14h49
  4. [VBA] Savoir quelle est la clé primaire inséré
    Par kissmytoe dans le forum Access
    Réponses: 1
    Dernier message: 07/03/2006, 08h48
  5. Réponses: 2
    Dernier message: 04/01/2006, 10h59

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