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 :

Appeler une macro VBA depuis une cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Par défaut Appeler une macro VBA depuis une cellule
    Bonjour,

    J'ai parcouru une bonne partie des sujets déjà écrits et je n'ai pas trouvé de solution à mon problème que voici :
    - Dans un fichier VBA, j'ai une macro appelée MyFunction(cell1,cell2)
    - Dans un fichier excel, une cellule appelle cette fonction par :
    Cela fonctionne très bien jusqu'à la prochaine ouverture du fichier excel.

    En effet, à la prochaine ouverture du fichier Excel, je rencontre l'erreur #NOM, car il ne trouve plus MyFunction, alors qu'il est toujours présent.
    Je dois alors changer la formule de la cellule par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MesMacros.xla!MyFunction(H4,J4)
    Mais après avoir retrouvé le lien, Excel transforme la formule en Et le problème réapparaitra à la prochaine ouverture de fichier ...

    Comme concerver en dur le chemin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MesMacros.xla!MyFunction(H4,J4)
    dans la cellule ?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 117
    Par défaut
    Salut,

    Deux solutions possibles :
    1- Tu ajoutes ta macro dans ton fichier, du coup, tu n'auras plus le problème
    2- Le fichier *.xla doit être mis dans le répertoire idoine, à savoir :
    C:\....\Application Data\Microsoft\Addins

  3. #3
    Membre du Club
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Par défaut
    Malheureusement, je ne peux pas utiliser ces solutions
    1/ la macro est dans un fichier xla, car elle est utilisée par de nombreux fichiers excel. Donc cette solution demanderait de dupliquer une macro qui peut encore évoluer ...

    2/ Je ne peux pas non plus, car ces fichiers Excel sont utilisés par plusieurs utilisateurs sur plusieurs ordinateurs. Ce nombre d'utilisateurs n'est pas fixe et n'est pas complétement connu, donc pas envisageable de demander à chacun de copier ou même créer un lien symbolique du fichier xla sur le disque local

    Je cherchais plutôt une solution qui force Excel à figer le chemin d'appel de la macro, genre INDIRECT, mais INDIRECT ne cible que des noms de cellule et refuse un appel de function

    Merci quand même ...

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 117
    Par défaut
    Re

    J'ai peut être une piste de solution

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    AddIns.Add "Filename"
    AddIns("Nom module ?").Installed = True
    Tu mets ça à l'ouverture de ton classeur

  5. #5
    Membre du Club
    Inscrit en
    Avril 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 8
    Par défaut
    J'obtiens toujours #NOM comme résultat
    tu as testé chez toi ?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 117
    Par défaut
    Non j'avoue que j'ai pas essayé de mettre un appel de fonction
    Mais l'ajout des macros complémentaires fonctionne bien.
    Je vais voir

Discussions similaires

  1. [XL-2013] Référence à une cellule nommée depuis une macro VBA
    Par vonfelt dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/02/2015, 11h25
  2. [XL-2007] Appel d'une fonction VBA depuis une feuille
    Par St-Jean dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/11/2009, 23h55
  3. Appeler une dll ou un autre module vba depuis une macro excel vba
    Par technobiz dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/11/2008, 14h24
  4. Lancer une macro excel depuis une macro powerpoint
    Par toma65 dans le forum VBA PowerPoint
    Réponses: 7
    Dernier message: 12/06/2007, 09h41
  5. [VBA]lancer une macro à chaque changement de cellule dans une feuille
    Par freddddd dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/05/2007, 13h58

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