Bonjour,
Excel 2000,
Dans la macro suivante, comment faire en sorte que les feuilles du nouveau
classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test()
Dim Rg As Range, Chemin As String
Chemin = ThisWorkbook.FullName & "\"
Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1")
Application.ScreenUpdating = False
Sheets(Array("Résumé litres", "Litres", "millage réel", _
"Kilométrages", "Formule Gouvernement")).Copy
With ActiveWorkbook
.SaveAs Chemin & Rg & ".xls"
'Si nécessaire
.Close False
End With
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
bonjour Flac,
si c'est pour détruire tout les codes,
remplacer :
.Close False
par
DeleteAllVBA
.Close True
Sub DeleteAllVBA()
'Source : Chip Pearson
'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1, 2, 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
isabelle
Flac a écrit :
Bonjour,
Excel 2000,
Dans la macro suivante, comment faire en sorte que les feuilles du nouveau
classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test()
Dim Rg As Range, Chemin As String
Chemin = ThisWorkbook.FullName & ""
Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1")
Application.ScreenUpdating = False
Sheets(Array("Résumé litres", "Litres", "millage réel", _
"Kilométrages", "Formule Gouvernement")).Copy
With ActiveWorkbook
.SaveAs Chemin & Rg & ".xls"
'Si nécessaire
.Close False
End With
End Sub
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
Flac
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
Bonjour et merci Isabelle,
Pourrais-tu m'expliquer comment je pourrais changer le
nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de
"classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle
syntaxe devrais-je utiliser pour
appliquer la macro au classeur actif
Merci à l'avance
Flac
"isabelle" <i@v> a écrit dans le message de news:
u1$w6XWNJHA.1160@TK2MSFTNGP04.phx.gbl...
bonjour Flac,
si c'est pour détruire tout les codes,
remplacer :
.Close False
par
DeleteAllVBA
.Close True
Sub DeleteAllVBA()
'Source : Chip Pearson
'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1, 2, 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
isabelle
Flac a écrit :
Bonjour,
Excel 2000,
Dans la macro suivante, comment faire en sorte que les feuilles du
nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test()
Dim Rg As Range, Chemin As String
Chemin = ThisWorkbook.FullName & ""
Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1")
Application.ScreenUpdating = False
Sheets(Array("Résumé litres", "Litres", "millage réel", _
"Kilométrages", "Formule Gouvernement")).Copy
With ActiveWorkbook
.SaveAs Chemin & Rg & ".xls"
'Si nécessaire
.Close False
End With
End Sub
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
isabelle
bonjour flac,
c'est cette ligne qu'il faut modifier :
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
bonjour flac,
c'est cette ligne qu'il faut modifier :
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle,
Pourrais-tu m'expliquer comment je pourrais changer le
nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de
"classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle
syntaxe devrais-je utiliser pour
appliquer la macro au classeur actif
Merci à l'avance
Flac
"isabelle" <i@v> a écrit dans le message de news:
u1$w6XWNJHA.1160@TK2MSFTNGP04.phx.gbl...
bonjour Flac,
si c'est pour détruire tout les codes,
remplacer :
.Close False
par
DeleteAllVBA
.Close True
Sub DeleteAllVBA()
'Source : Chip Pearson
'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1, 2, 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
isabelle
Flac a écrit :
Bonjour,
Excel 2000,
Dans la macro suivante, comment faire en sorte que les feuilles du
nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test()
Dim Rg As Range, Chemin As String
Chemin = ThisWorkbook.FullName & ""
Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1")
Application.ScreenUpdating = False
Sheets(Array("Résumé litres", "Litres", "millage réel", _
"Kilométrages", "Formule Gouvernement")).Copy
With ActiveWorkbook
.SaveAs Chemin & Rg & ".xls"
'Si nécessaire
.Close False
End With
End Sub
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
Flac
Merci, ça fonctionne.
Flac
"isabelle" a écrit dans le message de news:
bonjour flac,
c'est cette ligne qu'il faut modifier :
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub
Merci
Flac
Merci, ça fonctionne.
Flac
"isabelle" <i@v> a écrit dans le message de news:
uaVOUkdNJHA.4116@TK2MSFTNGP02.phx.gbl...
bonjour flac,
c'est cette ligne qu'il faut modifier :
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle,
Pourrais-tu m'expliquer comment je pourrais changer le
nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de
"classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle
syntaxe devrais-je utiliser pour
appliquer la macro au classeur actif
Merci à l'avance
Flac
"isabelle" <i@v> a écrit dans le message de news:
u1$w6XWNJHA.1160@TK2MSFTNGP04.phx.gbl...
bonjour Flac,
si c'est pour détruire tout les codes,
remplacer :
.Close False
par
DeleteAllVBA
.Close True
Sub DeleteAllVBA()
'Source : Chip Pearson
'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object
Dim VBComps As Object
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1, 2, 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
isabelle
Flac a écrit :
Bonjour,
Excel 2000,
Dans la macro suivante, comment faire en sorte que les feuilles du
nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test()
Dim Rg As Range, Chemin As String
Chemin = ThisWorkbook.FullName & ""
Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1")
Application.ScreenUpdating = False
Sheets(Array("Résumé litres", "Litres", "millage réel", _
"Kilométrages", "Formule Gouvernement")).Copy
With ActiveWorkbook
.SaveAs Chemin & Rg & ".xls"
'Si nécessaire
.Close False
End With
End Sub
Set VBComps = Workbooks("Classeur7").VBProject.VBComponents
par :
Set VBComps = ActiveWorkbook.VBProject.VBComponents
isabelle
Flac a écrit :
Bonjour et merci Isabelle, Pourrais-tu m'expliquer comment je pourrais changer le nom "classeur7" de la macro DeleteALLVBA
La macro bogue sur cette ligne (sauf si le classeur porte le nom de "classeur7")
J'ai modifié avec (Activeworkbook) mais ça ne fonctionne pas. Quelle syntaxe devrais-je utiliser pour appliquer la macro au classeur actif
Merci à l'avance
Flac "isabelle" a écrit dans le message de news: u1$
bonjour Flac,
si c'est pour détruire tout les codes, remplacer :
.Close False
par
DeleteAllVBA .Close True
Sub DeleteAllVBA() 'Source : Chip Pearson 'http://www.cpearson.com/excel/vbe.htm
Dim VBComp As Object Dim VBComps As Object Set VBComps = Workbooks("Classeur7").VBProject.VBComponents For Each VBComp In VBComps Select Case VBComp.Type Case 1, 2, 3 VBComps.Remove VBComp Case Else With VBComp.CodeModule .DeleteLines 1, .CountOfLines End With End Select Next VBComp End Sub
isabelle
Flac a écrit :
Bonjour, Excel 2000, Dans la macro suivante, comment faire en sorte que les feuilles du nouveau classeur ne comprennent pas les macros "Evenements de feuille"?
Sub test() Dim Rg As Range, Chemin As String Chemin = ThisWorkbook.FullName & "" Set Rg = ThisWorkbook.Worksheets("Menu").Range("A1") Application.ScreenUpdating = False Sheets(Array("Résumé litres", "Litres", "millage réel", _ "Kilométrages", "Formule Gouvernement")).Copy With ActiveWorkbook .SaveAs Chemin & Rg & ".xls" 'Si nécessaire .Close False End With End Sub