Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
687E83C3-FB77-4430-A612-A196A0949C9D@microsoft.com...
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
687E83C3-FB77-4430-A612-A196A0949C9D@microsoft.com...
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
40C64324-7771-43B2-94CA-FDDA7C8F56EB@microsoft.com...
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
687E83C3-FB77-4430-A612-A196A0949C9D@microsoft.com...
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
40C64324-7771-43B2-94CA-FDDA7C8F56EB@microsoft.com...
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
687E83C3-FB77-4430-A612-A196A0949C9D@microsoft.com...
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour.,
| Juste un hic, je supprime le code de certaines feuilles pour créer un
| nouveau "workbook"
La procédure que je t'ai donnée supprime tout le code associé au
classeur actif. Si tu fermes le classeur en l'enregistrant, il n'y a aucune
raison pour que cette question te soit posée.
Lorsque tu ouvres ce classeur, est-ce qu'il y a la présence d'un bout
de code dans la fenêtre VBE (visual basic editor) dans ton classeur ?
Est-ce qu'il y a la présence d'un module Standard ou module de classse ? même vide ?
Est-ce que ce classeur possède un formulaire (userform) ?
Si tu réponds "Non" à toutes ces questions...Tu devras donner plus de détails
sur ce que tu fais... car c'est là un comportement "anormal" d'excel.
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour michdenis,
J'ai essayé ton code mais j'ai quand même le message.
Bonne fin de journée!
"michdenis" wrote:
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour.,
| Juste un hic, je supprime le code de certaines feuilles pour créer un
| nouveau "workbook"
La procédure que je t'ai donnée supprime tout le code associé au
classeur actif. Si tu fermes le classeur en l'enregistrant, il n'y a aucune
raison pour que cette question te soit posée.
Lorsque tu ouvres ce classeur, est-ce qu'il y a la présence d'un bout
de code dans la fenêtre VBE (visual basic editor) dans ton classeur ?
Est-ce qu'il y a la présence d'un module Standard ou module de classse ? même vide ?
Est-ce que ce classeur possède un formulaire (userform) ?
Si tu réponds "Non" à toutes ces questions...Tu devras donner plus de détails
sur ce que tu fais... car c'est là un comportement "anormal" d'excel.
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
BFAC9192-2AF9-4D27-89F0-50F88E3AC110@microsoft.com...
Bonjour michdenis,
J'ai essayé ton code mais j'ai quand même le message.
Bonne fin de journée!
"michdenis" wrote:
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
40C64324-7771-43B2-94CA-FDDA7C8F56EB@microsoft.com...
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:
Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" <BEAUCHAND@discussions.microsoft.com> a écrit dans le message de news:
687E83C3-FB77-4430-A612-A196A0949C9D@microsoft.com...
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!
Bonjour.,
| Juste un hic, je supprime le code de certaines feuilles pour créer un
| nouveau "workbook"
La procédure que je t'ai donnée supprime tout le code associé au
classeur actif. Si tu fermes le classeur en l'enregistrant, il n'y a aucune
raison pour que cette question te soit posée.
Lorsque tu ouvres ce classeur, est-ce qu'il y a la présence d'un bout
de code dans la fenêtre VBE (visual basic editor) dans ton classeur ?
Est-ce qu'il y a la présence d'un module Standard ou module de classse ? même vide ?
Est-ce que ce classeur possède un formulaire (userform) ?
Si tu réponds "Non" à toutes ces questions...Tu devras donner plus de détails
sur ce que tu fais... car c'est là un comportement "anormal" d'excel.
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour michdenis,
J'ai essayé ton code mais j'ai quand même le message.
Bonne fin de journée!
"michdenis" wrote:
| Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Pour éviter d'avoir ce message à l'ouverture du classeur, le classeur
en plus de n'avoir aucune macro, il ne soit pas y avoir de module
standard, module de classe ou de formulaire (userform).
La suppression du code n'est pas suffisante !
Voici une macro que tu peux utiliser pour supprimer tout le code et
les modules d'un classeur :
'---------------------------------------
Sub SupprimeToutCodeEtFormulaire()
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = ActiveWorkbook.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 100
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
Case Else
VBComps.Remove VBComp
End Select
Next VBComp
End Sub
'---------------------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour Michdenis,
Merci, ceci répond exactement à mes besoins.
Juste un hic, je supprime le code de certaines feuilles pour créer un
nouveau "workbook" dans lequel je copie ces feuilles, mais à l'ouverture du
nouveau "workbook" j'ai quand même un message me demandant si je veux
exécuter les macros même si celles-ci n'existe plus.
J'ai fait un test et j'ai supprimé manuellement les espaces vides qui reste
dans chaque procédure "worksheet_Activate" et je ne reçois plus le message
par la suite.
Y-a-t-il un moyen de supprimer complètement ces espaces vides?
Merci à l'avance!
"michdenis" wrote:Bonjour Beauchand,
Voici un exemple comme supprimer la procédure
"Private Sub Worksheet_Activate()" de la Feuil1
Pour supprimer la procédure événementielle "Click" d'un bouton
tu remplaces dans cette procédure :
A ) Feuil1 par le codename de la feuille où ton ta procédure
B ) Le nom de la procédure "Worksheet_Activate" par
le nom du bouton : Bouton1_Click
'---------------------------
Sub SupprimerUneSub()
If ThisWorkbook.VBProject.Protection Then Exit Sub
Dim StartLine As Long, LineCount As Long
On Error Resume Next
'Feuil1 = CodeName de la feuille
'Nom de l'objet "Feuil" dans la fenêtre VBE et non
'l'onglet de la feuille
With ActiveWorkbook.VBProject.VBComponents("Feuil1").CodeModule
StartLine = .ProcStartLine("Worksheet_Activate", 0)
If StartLine Then
LineCount = .ProcCountLines("Worksheet_Activate", 0)
.DeleteLines StartLine, LineCount
End If
End With
End Sub
'---------------------------
Salutations!
"BEAUCHAND" a écrit dans le message de news:
Bonjour à tous,
Je travaille avec Excel 2000.
Est-t-il possible par VBA de supprimer le code qui est sur la propriété
CLICK d'un bouton?
Est-t-il également possible de supprimer le code qui est sur ACTIVATE d'une
feuille?
Merci à l'avance!