Bonjour à tous,

Voila j'ai un soucis d'appel de fonctions dans des fonctions personnalisées. J'ai cherché dans tous les coins sur internet je n'ai pas réussi à trouver de réponses (ou alors j'ai mal compris).

D'un côté, j'ai des fonctions définies dans un module d'un classeur sauvé en .xla. Ces fonctions sont activées et marchent dans toutes mes autres feuilles de calcul. A savoir que ces fonctions sont bêtement des interpolations de tableaux 1d, tableaux déclarés et initialisés au début du module.
Là où ça se gâte : dans un second classeur (voué à rester un .xls lui) je souhaite définir des fonctions personnalisées faisant appel aux fonctions définies dans le .xla. Et là, tourne que tu tourneras, impossible de faire marcher le truc. J'ai mis les bouts de ode au bout du post pour les détails. J'ai déjà fait des fonctions qui en appellent d'autres situées dans le même module sans problème, là je ne sais pas si le problème vient juste du fait du stockage des fonctions dans 2 endroits différents ou non.

Alors, j'ai essayé de préciser "Public" pour les fonctions du .xla sans résultat, j'ai essayé en précisant l'adresse du fichier .xla ou juste son nom devant la fonction, sans résultat, j'ai tripatouillé des trucs avec Call mais je maîtrise pas des masses, ... bref, je suis perdu !
Si quelqu'un sait comment faire je suis preneur !

Merci à vous.



module du .xla contenant mes fonctions "de base" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Option Explicit
Option Base 0
 
Dim tableau_a(10) As Array
...
tableau_a(0)=0
...
tableau_a(9)=0
 
...
Function fonction_de_base(x As Double) As Double
...
End Function


module du .xls contenant les fonctions "complexes" :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Function fonction_1(x As Double, ...) As Double
...
a = fonction_de_base(x)
...
End Function