XL 2010 Origine appel fonction en VBA

  • Initiateur de la discussion Initiateur de la discussion mécano41
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mécano41

XLDnaute Accro
Bonjour,

Comment puis-je savoir si une fonction en VBA a été appelée depuis une feuille de calculs ou depuis un autre code VBA?
(au début de ma fonction, j'ai : Set PlgSel=Application.Caller et un traitement utile pour un appel depuis une feuille mais qui met évidemment une erreur si j'appelle la fonction depuis une Sub...)

... rien trouvé par recherche ni dans l'aide ...

Cordialement
 
Bonjour à tous,

Comment puis-je savoir si une fonction en VBA a été appelée depuis une feuille de calculs ou depuis un autre code VBA?
tu peux utiliser THIScell :
VB:
Function test() As String
    Dim ori As Range
    On Error Resume Next
    Set ori = Application.ThisCell
    On Error GoTo 0
    If ori Is Nothing Then
        ' appel depuis vba
    Else
        ' appel depuis excel
        Debug.Print ori.Address 'ref d'appel
        Debug.Print ori.Parent.Name 'nom feuille d'appel
        Debug.Print ori.Parent.Parent.Name 'nom classeur d'appel
    End If
    Set ori = Nothing
End Function
eric
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
353
Réponses
16
Affichages
1 K
Retour