Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro pour détecter des macros ;o))

2 réponses
Avatar
CAP2
Bonjour à tous !

Je reviens pour une autre question : Est-il possible par VBA de coder une
macro dont le but serait de vérifier si une macro donnée existe déjà dans
Perso.xls ?

Merci d'avance de vos idées et suggestions !!

CAP2

2 réponses

Avatar
MichDenis
Une façon de faire :

'nécessite une référence à la librairie
'Microsoft Visual Basic For Application Extensibility 5.3

P.S. la procédure suivante ne fait pas la distinction entre une
Sub et une fonction.

'---------------------------
Sub test()
'Tu peux passer le classeur que tu veux...
'CheckLaSub" est la procédure recherchée
MsgBox CheckLaSub(Workbooks(Perso.xls"), "CheckLasub")
End Sub
'---------------------------

'--------------------------------------------
Function CheckLaSub(Wk As Workbook, SearchSub As String) As Boolean

Dim Cmod As CodeModule
Dim Début As Long
CheckLaSub = False
Dim i As Long

For Each vbcomp In Wk.VBProject.VBComponents
Set Cmod = vbcomp.CodeModule
With Cmod
Début = .CountOfDeclarationLines + 1
Do Until Début >= .CountOfLines
If UCase(SearchSub) = _
UCase(.ProcOfLine(Début, vbext_pk_Proc)) Then
CheckLaSub = True
Exit Function
End If
Début = Début + .ProcCountLines(.ProcOfLine(Début, _
vbext_pk_Proc), vbext_pk_Proc)
i = i + 1
Loop
End With
Next
End Function
'--------------------------------------------





"CAP2" a écrit dans le message de news:
Bonjour à tous !

Je reviens pour une autre question : Est-il possible par VBA de coder une
macro dont le but serait de vérifier si une macro donnée existe déjà dans
Perso.xls ?

Merci d'avance de vos idées et suggestions !!

CAP2
Avatar
CAP2
Super !!

Merci beaucoup MichDenis !!

A bientôt,

CAP2