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 :

Utiliser les macros de personal.xlsb [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 161
    Par défaut Utiliser les macros de personal.xlsb
    Bonjours à tous
    j'aimerais savoir comment appeler une macro du classeur personnel de macros dans une macro d'un classeur lambda.

    petite explication:
    je fais souvent les mêmes choses mais dans des classeurs différents alors j'ai une petite bibliothèque de macros fonctions
    exemple:
    dans le personal.xlsb j'ai la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Function Derli(Li, Col)
    Derli = ActiveSheet.Cells(Li, Col).End(xlDown).Row
    End Function
    et dans le "Classeur1"par exemple je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    x = Derli(1, 1)
    End Sub
    et ben j'ai un message d'erreur ! "sub ou function non définie" sur derli alors que dans le même module de personal.xlsb ça fonctionne
    j'ai essayé de la passer en public function mais ça ne change rien
    alors si quelqu'un vois la solution c'est cool merci

  2. #2
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    en 1er as-tu bien regardé comment tu écris le nom de ta fonction dans les 2 cas ?

    cordialement,

    Didier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 161
    Par défaut
    Oui désolé c'est une petite erreur de frappe le probleme n'est pas la je vais corriger le post merci

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    oui, mais ça ne pardonne pas dans un code

    sinon voir du côté de : Application.Run

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.Run "NomDuClasseur.xlsb!NomDeLaMacro"
    voir aussi : Programmer efficacement avec Excel en VBA http://bidou.developpez.com/tutoriels/ExcelVBA/

    page 6

    s'applique ici car le perso est par définition ouvert...

    PS : attention syntaxe très sensible justement :
    peut demander de préciser le module
    si espaces dans le nom de classeur, entourer de simples quotes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      Application.Run "'NomDuClasseur.xlsb'!NomDeLaMacro"
    cordialement,

    Didier

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 161
    Par défaut
    Merci Didier je vais regarder tous ça

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 161
    Par défaut
    Un grand merci a Didier et la page 6 du lien !
    Pour ceux que cela pourrait intéresser
    avec PERSONAL.XLSB Masqué ou Affiché
    ma solution aura été:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x = Application.Run("PERSONAL.XLSB!Deli", 1, 1)
    ATTENTION au quotes et au parenthèses pour les arguments
    encore merci à tous

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

Discussions similaires

  1. [XL-2010] Problème avec le Classeur de macros personnelles PERSONAL.XLSB
    Par Thautheme dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/01/2019, 17h45
  2. Exécuter une MACRO de Personal.xlsb
    Par vr_brandon dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 07/03/2013, 14h27
  3. [XL-2007] Macros et Personal.xlsb introuvable
    Par squall44 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/10/2012, 10h42
  4. Utiliser les macro variables avec sql
    Par Euseibus dans le forum Macro
    Réponses: 5
    Dernier message: 25/10/2007, 18h40
  5. utiliser les macros Excel sous Open Office
    Par ProfAnn dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/04/2007, 12h58

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