[VBA-E] Comment faire une fonction utilsant une autre feuille
bonjour,
je me suis développé des outils personnels en VBA dans un fichier .xla.
Evolution oblige, j'aimerai pouvoir faire une fonction que l'on appellerait dans ma feuille de calcul excel par exemple =Toto(argument), et que la fonction Toto puisse aller chercher les informations dans un autre fichier excel.
La fonction focntion quand je fais des tests (du genre faire une sub qui l'appelle pour me mettre la valeur dans une msgbox), mais quand je fais le test sur la feuille avec =toto(), il me met l'erreur :"#valeur".
je ne comprends pas pourquoi.
voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Function Qx(iAge As Integer, stTable As String) As Double
Dim stFichier As String
stCheminTables = "c:\"
stFichier = "TV8890.xls"
url = stCheminTables & "\" & stFichier
Workbooks.Open url
Qx = Workbooks(stFichier).Sheets(stTable).Cells(iAge + 3, 2)
Workbooks(stFichier).Close
End Function |
j'avoue ne pas comprendre pourquoi il refuse.
J'ai aussi une question subsidiaire : comment faire pour que mes fonctions se mettent en gras... comme les fonctions d'excel.