Modfier une macro avec une macro

Le
ccorroyer
Bonjour,

Peut-on modifier une macro à partir d'une autre ? (si oui
comment ? :-))

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #5081941
Oui c'est possible... mais remplacer une ligne de code c'est alambiqué !

Je te propose plutôt d'effacer la procédure que tu veux modifier et la remplacer par une autre

Tu exécute la procédure test ....
'-----------------------------
Sub test()

ClearThisWorkbookCode "test1", "Feuil1"
AjouteLeCode

End Sub
'-----------------------------

Supprime la procédure Test1 du module Feuil1
'-------------------------------
Sub ClearThisWorkbookCode(ByVal NomProcédure As String, _
NomDuClasseur As String)

Dim StartLine As Long, LineCount As Long
On Error Resume Next

With ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine(NomProcédure, 0)
If StartLine Then
LineCount = .ProcCountLines(NomProcédure, 0)
.DeleteLines StartLine, LineCount
End If
End With

End Sub
'-------------------------------

'Pour ajouter une procédure "Sub MonAjout()" au module de la feuil1
'---------------------------
Sub AjouteLeCode()

Dim LeCode As String
LeCode = "Sub MonAjout()" & vbCrLf
LeCode = LeCode & "Msgbox ""bonjour""" & vbCrLf
LeCode = LeCode & "End Sub" & vbCrLf

With ThisWorkbook.VBProject.VBComponents("Feuil1").CodeModule
.AddFromString LeCode
End With

End Sub
'---------------------------




Bonjour,

Peut-on modifier une macro à partir d'une autre ? (si oui
comment ? :-))

Merci
Publicité
Poster une réponse
Anonyme