Bonjour,
Est il possible de récupérer la feuille courante lorsqu'on utilise une
macro en tant que fonction ?
Car thisComponent.CurrentController.ActiveSheet ne fonctionne pas et je
voudrais éviter de passer en paramètre supplémentaire par exemple
CELLULE("Sheet",A1) car la fonction est appelée sur plusieurs feuilles.
Pour éviter cela =MYFUNC("parametre1","parametre2",CELLULE("Sheet",A1))
Avec
=MYFUNC("parametre1","parametre2",CELLULE("Sheet"))
MYFUNC recevra en paramètre le numéro de la feuille où se trouve la
cellule contenant l'expression.
Comment utiliser une macro en fonction sans avoir ces erreurs ?
On est obligé de passer en paramètres des informations sur où ce trouve la
macro lorsqu'elle est exécutée ?
Comment les autres fonctions fonctionnent puisqu'elles ne recoivent pas
ces informations (car elles ne sont pas des macros?) ?
J'ai testé avec =MYFUNC("parametre1","parametre2",CELLULE("Sheet")) mais cela ne
fonctionne pas, on dirait qu'il ne connait pas thisComponent au chargement du
fichier.
Function myfunc(param As String, param2 As String, index As Integer)
...
thisComponent.Sheets.getByIndex(index - 1)
...
End Function
Même résultat en passant par StarDesktop.CurrentComponent.
Comment faire une fonction personnalisée qui fait référence à la feuille où la
fonction est appelée ?
Merci à vous.