Empecher une macro de se lancer plusieurs fois

cs_flolf Messages postés 17 Date d'inscription mercredi 22 novembre 2000 Statut Membre Dernière intervention 7 septembre 2005 - 27 juil. 2005 à 20:22
galopin01 Messages postés 133 Date d'inscription lundi 4 octobre 2004 Statut Membre Dernière intervention 14 octobre 2011 - 28 juil. 2005 à 11:48
Salut a tous
Voila j'ai fait une macro qui fait son boulot et qui a la fin enregistre le classeur excel sous un autre nom
Jusque la tout va bien
Par contre lorsqu'on ouvre donc ce nouveau classeur il nous dit qu'il y a une macro
Comment faire en sorte que cette macro ne puisse pas etre activee sur ce nouveau classeur?
Ou alors peut on faire en sorte qu'elle soit supprimer lors de l'enregistrement?

Merci d'avance

Florent

Comme quoi il y a de belles ballades a faire dans le coin...

3 réponses

cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 18
27 juil. 2005 à 20:34
Salut,

Je crois que le mieux est de créer un nouveau classeur et de copier tes feuilles dedans.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
0
cs_flolf Messages postés 17 Date d'inscription mercredi 22 novembre 2000 Statut Membre Dernière intervention 7 septembre 2005
27 juil. 2005 à 20:56
Merci pour l'info
Ca me parait etre une solution interessante
Par contre n'existerait il pas un moyen avec un compteur ou quelqus chose de similaire avec if
un truc du genre

cpt=0
if cpt=0 then
...
cpt=1
end if

Ou alors une commabe VB directe peut etre?

Parce qu'en fait j'ai des filtres et des formats dans la feuille en question et le copier coller n'en garde rien

Comme quoi il y a de belles ballades a faire dans le coin...
0
galopin01 Messages postés 133 Date d'inscription lundi 4 octobre 2004 Statut Membre Dernière intervention 14 octobre 2011 1
28 juil. 2005 à 11:48
bonjour,
glané ici ou là sur le net (Excelabo ?) :

Sub EffaceTouteMacro ()
Dim VBC As Object
With ActiveWorkbook.VBProject
For Each VBC In .VBComponents
If VBC.Type = 100 Then
With VBC.CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Else: .VBComponents.Remove VBC
End If
Next VBC
End With
End Sub

A+
0