Gael
XLDnaute Barbatruc
Bonjour à tous,
J'ai récupéré dernièrement un code de Frédéric Sigonneau pour qu'une macro s'auto-détruise après exécution.
C'est génial et ça marche très bien mais y-a-t-il un moyen de sauvegarder automatiquement le fichier dans ce cas?
Si je fais un Save dans la procédure, la sauvegarde se fera avant la destruction et la macro sera toujours présente et une fois la macro détruite, je ne peux plus exécuter de code.
J'ai essayé avec l'évènement Beforesave mais le code qui détruit la macro est conservé et génère une erreur à la sauvegarde suivante puisque la macro n'existe plus.
Quelqu'un a-t-il une idée?
Le code est le suivant:
Private Sub Workbook_Open()
Dim liDeb, NbLi
.
. Code à exécuter
.
With ThisWorkbook.VBProject.VBComponents('ThisWorkbook').CodeModule
liDeb = .ProcStartLine('Workbook_Open', 0)
NbLi = .ProcCountLines('Workbook_Open', 0)
.DeleteLines liDeb, NbLi
End With
End sub
Merci de votre aide.
@+
Gael
Désolé, j'ai mal posté. merci de replacer ce message dans le bon forum.
Gael
Message édité par: Gael, à: 01/06/2006 15:08
J'ai récupéré dernièrement un code de Frédéric Sigonneau pour qu'une macro s'auto-détruise après exécution.
C'est génial et ça marche très bien mais y-a-t-il un moyen de sauvegarder automatiquement le fichier dans ce cas?
Si je fais un Save dans la procédure, la sauvegarde se fera avant la destruction et la macro sera toujours présente et une fois la macro détruite, je ne peux plus exécuter de code.
J'ai essayé avec l'évènement Beforesave mais le code qui détruit la macro est conservé et génère une erreur à la sauvegarde suivante puisque la macro n'existe plus.
Quelqu'un a-t-il une idée?
Le code est le suivant:
Private Sub Workbook_Open()
Dim liDeb, NbLi
.
. Code à exécuter
.
With ThisWorkbook.VBProject.VBComponents('ThisWorkbook').CodeModule
liDeb = .ProcStartLine('Workbook_Open', 0)
NbLi = .ProcCountLines('Workbook_Open', 0)
.DeleteLines liDeb, NbLi
End With
End sub
Merci de votre aide.
@+
Gael
Désolé, j'ai mal posté. merci de replacer ce message dans le bon forum.
Gael
Message édité par: Gael, à: 01/06/2006 15:08