XL 2016 Appeler une fonction d'un autre classeur.

dodineau

XLDnaute Occasionnel
bonjour.
Dans une macro je voudrais appeler une fonction d'un autre classeur.
Quelle est la syntaxe à utiliser ?
Merci.
À+
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Ça dépend vraiment de la vocation de cet autre classeur.
Sinon, pour un besoin isolé, Application.Run devrait pouvoir faire l'affaire s'il est ouvert.
Si c'est un classeur dédié à ces fonctions, utilisables un peu partout, changez lui son VBAProject en un nom plus rare, que vous pourrez ajouter aux références des autres projets où vous voudrez pouvoir utiliser tout ce qui y est Public.
 

dodineau

XLDnaute Occasionnel
Merci pour cette réponse mais cest un peu compliqué à comprendre pour moi.
J'ai une function dans un classeur de macros et fonctions perso toujours ouvert. Cette fonction détermine si un jour est férié ou non.
Dans une cellule je peux donc écrire : = perso!ferie(a1) et la réponse est oui ou non.
Maintenant dans un classeur je voudrais écrire une macro du style : if perso!ferie(range("a1")="non"...
Voila en espérant avoir été clair :)
 

Dranreb

XLDnaute Barbatruc
Ça n'a quand même rien de compliqué de renommer un projet VBA, bon sang !
Comme pour tous les composants VBA c'est toujours la 1ère propriété (Name) dans la fenêtre de propriétés (et la seule d'ailleurs pour le projet lui même, comme pour un module standard).
Ce n'est pas compliqué non plus, dans le projet d'un autre classeur, de faire Outils, Références… et d'y cocher le nom qu'on à mis à l'autre !
 
Dernière édition:

Discussions similaires

Réponses
9
Affichages
122

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 812
dernier inscrit
abdouami