bonsoir Anne
je ne suis pas sur d'avoir bien compris ta demande
j'espere que l'exemple joint pourra t'aider
la procedure de test
Sub ProcedureDeTest()
On Error GoTo Fin
'...
'une macro
'....
Fin:
Call ControleProcedureActive
Call NomUsfAffiche
End Sub
pour afficher le nom de la procedure en cours
Sub ControleProcedureActive()
'adapté dune procedure de JS
Dim Lig As Long
Dim NomProcedureActive As String
With Application.VBE.ActiveCodePane 'recherche procedure en cours
.GetSelection Lig, 0, 0, 0
NomProcedureActive = .CodeModule.ProcOfLine(Lig, 0)
End With
MsgBox NomProcedureActive
End Sub
pour afficher le nom de l'USF
Sub NomUsfAffiche()
Dim VbComp As VBComponent
Dim ObjComp As Object
'activer references microsoft visual basic for applications extensibilty 5.3
Set ObjComp = ThisWorkbook.VBProject.VBComponents
For Each VbComp In ObjComp ' recherche USF affiché
If VbComp.Type = 3 Then
If Application.VBE.SelectedVBComponent.Name = VbComp.Name Then _
MsgBox "Nom de l'USF : " & VbComp.Name
End If
Next
End Sub
bonne soiree
michel