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

[VBA XL] Macro qui s'autodétruit

13 réponses
Avatar
JièL
Salutatousses

j'avais prévenu, j'ai des questions ALC...

Comment créer une macro autoopen qui fait diverses choses et qui
s'autodétruit à la fin, voire qui supprime le module complet ?

Merci d'avance

--
JièL plein de question ALC

10 réponses

1 2
Avatar
Jacquouille
salut
Dans l'auto open, juste avant le mot "FIN", tu fais un auto closet (le
cousin de Walter)

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"JièL" a écrit dans le message de groupe de discussion :
n0ssv7$vns$

Salutatousses

j'avais prévenu, j'ai des questions ALC...

Comment créer une macro autoopen qui fait diverses choses et qui
s'autodétruit à la fin, voire qui supprime le module complet ?

Merci d'avance

--
JièL plein de question ALC


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
Jacquouille
Ave Jièl
Pour ta macro, as-tu essayé, juste avant le mot " end ", de lui faire faire
une copie du doc et de son code, puis de sélectionner toute la page avec le
texte de la macro, puis delete.
Avec l'enregistreur, cela ne donne rien?
Je n'ose essayer car Murphy rode toujours près de chez moi et il serait bien
capable de me deleter tout le basar. -))


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"JièL" a écrit dans le message de groupe de discussion :
n0ssv7$vns$

Salutatousses

j'avais prévenu, j'ai des questions ALC...

Comment créer une macro autoopen qui fait diverses choses et qui
s'autodétruit à la fin, voire qui supprime le module complet ?

Merci d'avance

--
JièL plein de question ALC


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
DanielCo
J'ai un mauvais pressentiment pour celle-la. Comme le code n'est pas compilé,
tu exécutes le code source. je pense qu'il est verrouillé...
Daniel
JièL a présenté l'énoncé suivant :
Salutatousses

j'avais prévenu, j'ai des questions ALC...

Comment créer une macro autoopen qui fait diverses choses et qui
s'autodétruit à la fin, voire qui supprime le module complet ?

Merci d'avance
Avatar
MichD
Bonjour,

Voici un exemple de code. Suppose que tout le code suivant est dans un MODULE STANDARD appelé
"Module1".
À l'ouverture du classeur la macro "Auto_Open" s'exécute et supprime SEULEMENT le Module1 et tout
son contenu.

'--------------------------------------------------------------
Sub Auto_open()
Call Bonjour("Jiel")
Call Bonsoir("Jiel")
Call Supprimer_Module("Module1")
End Sub
'--------------------------------------------------------------
Sub Bonjour(N)
MsgBox "Bonjour " & N
End Sub
'--------------------------------------------------------------
Sub Bonsoir(N)
MsgBox "Bonsoir " & N
End Sub
'--------------------------------------------------------------
Sub Supprimer_Module(N)
Dim Comp As Object

With ThisWorkbook.VBProject
Set Comp = .VBComponents(N)
.VBComponents.Remove Comp
End With
End Sub
'--------------------------------------------------------------
Avatar
MichD
Bonjour,

Voici un exemple de code. Suppose que tout le code suivant
est dans un MODULE STANDARD appelé "Module1".

À l'ouverture du classeur la macro "Auto_Open" s'exécute et
supprime SEULEMENT le Module1 et tout son contenu.

'--------------------------------------------------------------
Sub Auto_open()
Call Bonjour("Jiel")
Call Bonsoir("Jiel")
Call Supprimer_Module("Module1")
End Sub
'--------------------------------------------------------------
Sub Bonjour(N)
MsgBox "Bonjour " & N
End Sub
'--------------------------------------------------------------
Sub Bonsoir(N)
MsgBox "Bonsoir " & N
End Sub
'--------------------------------------------------------------
Sub Supprimer_Module(N)
Dim Comp As Object

With ThisWorkbook.VBProject
Set Comp = .VBComponents(N)
.VBComponents.Remove Comp
End With
End Sub
'--------------------------------------------------------------
Avatar
Jacquouille
Bonsoir Denis

C'est quoi, ce (N), puis ... & N ?
Merci
jacques



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
n0tkts$rh4$

Bonjour,

Voici un exemple de code. Suppose que tout le code suivant
est dans un MODULE STANDARD appelé "Module1".

À l'ouverture du classeur la macro "Auto_Open" s'exécute et
supprime SEULEMENT le Module1 et tout son contenu.

'--------------------------------------------------------------
Sub Auto_open()
Call Bonjour("Jiel")
Call Bonsoir("Jiel")
Call Supprimer_Module("Module1")
End Sub
'--------------------------------------------------------------
Sub Bonjour(N)
MsgBox "Bonjour " & N
End Sub
'--------------------------------------------------------------
Sub Bonsoir(N)
MsgBox "Bonsoir " & N
End Sub
'--------------------------------------------------------------
Sub Supprimer_Module(N)
Dim Comp As Object

With ThisWorkbook.VBProject
Set Comp = .VBComponents(N)
.VBComponents.Remove Comp
End With
End Sub
'--------------------------------------------------------------


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
MichD
| C'est quoi, ce (N), puis ... & N ?

C'est simplement un paramètre à la procédure appelée. En fait, ce "N" permet
de passer le nom de "Jiel" à la procédure "Bonjour" et "Bonsoir" et la valeur
"Module1" à la procédure "Supprimer_Module"

Une procédure peut avoir autant de paramètres que la situation nécessite, mais une
procédure n'a pas nécessairement besoin d'un paramètre pour exister!
Avatar
Jacquouille
Merci Denis.
C'est Jièl qui va être content d'être élevé au grade de paramètre . -))



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
n0tpv6$8ai$

| C'est quoi, ce (N), puis ... & N ?

C'est simplement un paramètre à la procédure appelée. En fait, ce "N" permet
de passer le nom de "Jiel" à la procédure "Bonjour" et "Bonsoir" et la
valeur
"Module1" à la procédure "Supprimer_Module"

Une procédure peut avoir autant de paramètres que la situation nécessite,
mais une
procédure n'a pas nécessairement besoin d'un paramètre pour exister!


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
JièL
Merci MichD, ça le fait très bien

--
JièL auto-destructeur

Le 29/10/2015 18:24, MichD a écrit :
Bonjour,

Voici un exemple de code. Suppose que tout le code suivant est dans un
MODULE STANDARD appelé "Module1".
À l'ouverture du classeur la macro "Auto_Open" s'exécute et supprime
SEULEMENT le Module1 et tout son contenu.

'--------------------------------------------------------------
Sub Auto_open()
Call Bonjour("Jiel")
Call Bonsoir("Jiel")
Call Supprimer_Module("Module1")
End Sub
'--------------------------------------------------------------
Sub Bonjour(N)
MsgBox "Bonjour " & N
End Sub
'--------------------------------------------------------------
Sub Bonsoir(N)
MsgBox "Bonsoir " & N
End Sub
'--------------------------------------------------------------
Sub Supprimer_Module(N)
Dim Comp As Object

With ThisWorkbook.VBProject
Set Comp = .VBComponents(N)
.VBComponents.Remove Comp
End With
End Sub
'--------------------------------------------------------------
Avatar
JièL
Carrément fier même ;-)

--
JièL pas ramètre, mais presque

Le 29/10/2015 20:50, Jacquouille a écrit :
Merci Denis.
C'est Jièl qui va être content d'être élevé au grade de paramètre . -))



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
n0tpv6$8ai$

| C'est quoi, ce (N), puis ... & N ?

C'est simplement un paramètre à la procédure appelée. En fait, ce "N"
permet
de passer le nom de "Jiel" à la procédure "Bonjour" et "Bonsoir" et la
valeur
"Module1" à la procédure "Supprimer_Module"

Une procédure peut avoir autant de paramètres que la situation
nécessite, mais une
procédure n'a pas nécessairement besoin d'un paramètre pour exister!

---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
http://www.avast.com

1 2