Supprimer macro evenementielle

Le
Droopy191
Salut,

Je duplique une feuille dans un nouveau classeur par
ActiveSheet.Copy

Dans ce nouveau classeur qui n'a donc qu'une seule feuille, je voudrais
supprimer une macro inscrite dans le code de cette feuille.
En l'occurrence, l'événement associé à un click de bouton.

Comment faire ?
j'ai lu et tester les procédures procédures proposées dans
http://www.excelabo.net/excel/macrossupprimer.php
je n'arrive pas à l'appliquer à un code de feuille

Ma macro
'Suppression de la macro dans le classeur
Dim LiDeb, NbLi
With ActiveWorkbook.VBProject.VBComponents("MaFeuill").CodeModule
LiDeb = .ProcStartLine("Btn_Enregistrer_Click", 0)
NbLi = .ProcCountLines("Btn_Enregistrer_Click", 0)
.DeleteLines LiDeb, NbLi
End With

Je pense que je "décris" mal ma feuille


Merci de votre aide

--
DR
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
LSteph
Le #4856891
Bonsoir Droopy

Exemple le code dans le thisworkbook du classeur initial
et on duplique par dlblclic sur la feuille voulue:

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, _
ByVal Target As Range, Cancel As Boolean)

'....
ActiveSheet.Copy
With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule

Do While .CountOfLines <> 0
.DeleteLines 1
Loop
End With
ActiveWorkbook.SaveAs "sansmacro.xls"
End Sub

'lSteph

Salut,

Je duplique une feuille dans un nouveau classeur par
ActiveSheet.Copy

Dans ce nouveau classeur qui n'a donc qu'une seule feuille, je voudrais
supprimer une macro inscrite dans le code de cette feuille.
En l'occurrence, l'événement associé à un click de bouton.

Comment faire ?
j'ai lu et tester les procédures procédures proposées dans
http://www.excelabo.net/excel/macrossupprimer.php
je n'arrive pas à l'appliquer à un code de feuille

Ma macro
'Suppression de la macro dans le classeur
Dim LiDeb, NbLi
With ActiveWorkbook.VBProject.VBComponents("MaFeuill").CodeModule
LiDeb = .ProcStartLine("Btn_Enregistrer_Click", 0)
NbLi = .ProcCountLines("Btn_Enregistrer_Click", 0)
.DeleteLines LiDeb, NbLi
End With

Je pense que je "décris" mal ma feuille


Merci de votre aide



Droopy191
Le #4856801
Salut,

Je duplique une feuille dans un nouveau classeur par
ActiveSheet.Copy

Dans ce nouveau classeur qui n'a donc qu'une seule feuille, je voudrais
supprimer une macro inscrite dans le code de cette feuille.
En l'occurrence, l'événement associé à un click de bouton.

Comment faire ?
j'ai lu et tester les procédures procédures proposées dans
http://www.excelabo.net/excel/macrossupprimer.php
je n'arrive pas à l'appliquer à un code de feuille

Ma macro
'Suppression de la macro dans le classeur
Dim LiDeb, NbLi
With ActiveWorkbook.VBProject.VBComponents("MaFeuill").CodeModule
LiDeb = .ProcStartLine("Btn_Enregistrer_Click", 0)
NbLi = .ProcCountLines("Btn_Enregistrer_Click", 0)
.DeleteLines LiDeb, NbLi
End With

Je pense que je "décris" mal ma feuille


Merci de votre aide



bon j'ai trouvé comment faire
la macro est correcte
mais

- Il faut activer dans le VB editor "Microsoft Visual Basic For
Applications Extensibility 5.3."
- Dans Excel / outils / macros / securité / Editeurs approuvés / cocher
"Faire confiance au projet Visual Basic

un lien avec plein d'info pour maniper les modules et procédures
http://www.cpearson.com/excel/vbe.aspx


Désolé pour le bruit

--
DR

Publicité
Poster une réponse
Anonyme