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 :

Fichier d'enregistrement des macros


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Fichier d'enregistrement des macros
    Bonjour,

    j'ai créé un fichier avec des macros, une vingtaine, et ces macros sont enregistrés dans le classeur. Conséquence, sans données, le classeur a déjà une taille de 3MO.

    Pour éviter que l'ouverture et l'enregistrement ne soit trop long, est il possible de scinder les macros sur un autre classeur? est ce que ceci aura un effet sur les temps de traitement du classeur?
    si c'est le cas, comment faire pour basculer les macros de mon classeur de base de données à un autre classeur contenant uniquement les macros?

    je précise que ce classeur est partagé sur un réseau.

    merci par avance de vos réponses.

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 173
    Points : 127
    Points
    127
    Par défaut
    Salut,

    je ne suis pas sûr d'avoir bien compris ton problème. Est ce que par hasard la réponse à ta question ne serait pas dans ce tutorial : ftp://ftp-developpez.com/silkyroad/V...asicEditor.pdf ?

    Sinon, peux tu reformuler ta demande ? En gros ce que tu veux, c'est que des macros d'un classeur fassent des calculs dans un autre classeur ?

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    je vais essayer de reformuler ma question:

    j'ai une base de données pour laquelle j'ai créé de nombreux boutons actifs rattachés à des macros.

    Cette base de données a déjà une taille de 3MO alors qu'elle est vide pour le moment les utilisateurs n'ayant pas encore accès au fichier. Du coup je trouve que l'ouverture et la fermeture du fichier sont long.

    Je présume que se sont les macros qui font que le fichier a une taille de 3MO, d'où ma question :
    est il possible de séparer les macros dans un autre classeur pour alléger ma base de données et accélérer son ouverture et fermeture?

    D'après le tutoriel, la réponse est oui, je pourrais mettre les macros dans un autre classeur et exécuter les macros dans ma base de données. Par contre, si je comprend bien, il faut que le deuxième classeur contenant les macros soit aussi ouvert pour que dans la base de données on puisse exécuter les macros?
    Existe t il un autre moyen?

    Par avance merci.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut
    tu peux stocker tes macros dans un classeur vierge, qu tu enregistreras au format macro comlémentaire (conserve l'emplacement par défaut). Ensuite te reste à activer cette macro complémentaire par outls/macros complémentaires.

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci pour la réponse.

    Donc pour faire un essai j'ai créé une macro dans un classeur vierge, j'ai enregistré ce classeur au format macro complémentaire en concervant l'emplacement proposé par Excel et j'ai appelé le fichier Macro1.

    Dans un deuxième classeur, je suis allé dans le menu d'activation des macros complémentaires et j'ai activé en cochant "Macro1".

    Par contre, comment exécuter cette macro? je voudrais rattacher la macro1 à un bouton actif, mais quand j'utilise l'option "affecter une macro", je n'ai rien de proposé!?

    Par avance merci.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut
    il te faut connaître le nom du proet vba, le nom de la feuille de module qui contient tes procédures, et le nom des procédures que tu veux attacher à des boutons.
    Ton projet étant activé tu le retrouves dans l'editeur visual basic (explrateur de projets). En faisant clic droit/propriétés sur ce projet tu pourras modifier le nom du projet à loisir.

    Ensuite sur une barra d'outils ou un bouton de formulaire, tu fais clic droit/affecter une macro et tu saisis:
    nomprojet.nomfeuille.nommacro()

    ça devrait marcher

  7. #7
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    OK merci ça fonctionne.

    par contre en utilisation réseau c'est plus délicat car quand j'enregistre le fichier au format macro complémentaire en gardant le chemin porposé par Excel, il enregistre le fichier dans C:/user/DUPONT/appdata... si bien que quand j'utilise la base de données sur un autre poste (autre profil) les macros ne fonctionnent plus, Excel m'indique qu'il ne trouve pas la macro c:user/dupont...

    Est ce qu'il y a une solution? enregister le fichier de macro complémentaire sur un emplacement du réseau?

    merci

  8. #8
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut
    le chemin vers la session est donné par:
    et pour application data

Discussions similaires

  1. [XL-2007] enregistrer des macros
    Par tompom3108 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/11/2011, 14h44
  2. [XL-MAC 2011] Ouverture d'un fichier que comporte des macros
    Par Gogia dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/08/2011, 14h34
  3. Réponses: 2
    Dernier message: 03/03/2008, 09h38
  4. Ouverture de fichier et désactivation des macros
    Par Aethis dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/07/2007, 11h47
  5. Réponses: 7
    Dernier message: 02/07/2007, 14h07

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