Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1707 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Comment supprimer une macro via une macro ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment supprimer une macro via une macro ?

n°1444328
soif de co​nnaissance
Posté le 18-09-2006 à 19:36:27  profilanswer
 

Hello,
 
Petite question, sous excel, je doit dupliquer une feuille qui contient du code et des données, et donc je fait un vulgaire copier coller basique.
 
Comment faire ensuite pour virer sur la feuille collée la partie code qui ne me servira plus ?
 
L'interet est que, ensuite cette feuille est transmise par mail et le destinataire, ne soit pas emmerdé avec la fenetre de sécurité d'ouverture macro.
 
J'ai déjà trouvé quelque scripts, mais ils effacent aussi les modules présent dans mon workbook.
 
 
Merci !

mood
Publicité
Posté le 18-09-2006 à 19:36:27  profilanswer
 

n°1444441
galopin01
Posté le 18-09-2006 à 23:57:14  profilanswer
 

bonsoir,
Je pense que ce lien devrait faire l'affaire.
A+

n°1444845
soif de co​nnaissance
Posté le 19-09-2006 à 19:18:25  profilanswer
 

galopin01 a écrit :

bonsoir,
Je pense que ce lien devrait faire l'affaire.
A+


Hélas non, car il efface toutes les macros du projet, y compris celles des modules.

n°1445415
soif de co​nnaissance
Posté le 20-09-2006 à 16:52:09  profilanswer
 

:cry:


Message édité par soif de connaissance le 20-09-2006 à 16:52:51
n°1445418
DamienCYS
Posté le 20-09-2006 à 16:58:50  profilanswer
 

soif de connaissance a écrit :


L'interet est que, ensuite cette feuille est transmise par mail et le destinataire, ne soit pas emmerdé avec la fenetre de sécurité d'ouverture macro.


 
Salut, je fais ca aussi.
ce que je fais c'est créée une nouvelle feuille puis copier coller d'une feuille dans l'autre et pas de soucis de macro
 

n°1445477
soif de co​nnaissance
Posté le 20-09-2006 à 19:44:55  profilanswer
 

DamienCYS a écrit :

Salut, je fais ca aussi.
ce que je fais c'est créée une nouvelle feuille puis copier coller d'une feuille dans l'autre et pas de soucis de macro


Hélas pour moi oui, car la feuille d'origine contient un poil de code :

Private Sub CommandButton1_click()
Sheets("auto" ).Select
Call depart
End Sub


 
C'est juste ces 4 lignes que je voudrais supprimer.

n°1445478
0x90
Posté le 20-09-2006 à 19:46:13  profilanswer
 
n°1445483
soif de co​nnaissance
Posté le 20-09-2006 à 20:04:26  profilanswer
 

0x90 a écrit :

Utilise grep [:chrisbk]


kécéssé ?

n°1445558
kiki29
Posté le 21-09-2006 à 05:40:38  profilanswer
 


Option Explicit
 
Sub SauverSansMacros()
Dim Chemin As String
    Chemin = ThisWorkbook.Path & "\" & "Backup.xls"
    ThisWorkbook.Sheets.Copy
    ActiveWorkbook.SaveAs Chemin
    ThisWorkbook.Close False
End Sub

Message cité 1 fois
Message édité par kiki29 le 21-09-2006 à 05:41:11
n°1445587
soif de co​nnaissance
Posté le 21-09-2006 à 08:33:54  profilanswer
 

kiki29 a écrit :


Option Explicit
 
Sub SauverSansMacros()
Dim Chemin As String
    Chemin = ThisWorkbook.Path & "\" & "Backup.xls"
    ThisWorkbook.Sheets.Copy
    ActiveWorkbook.SaveAs Chemin
    ThisWorkbook.Close False
End Sub



Non, car effacera toutes les macros de mon classeur, ce qu'il ne faut pas, je veux juste virer une macro sur une feuille précise

mood
Publicité
Posté le 21-09-2006 à 08:33:54  profilanswer
 

n°1445598
DamienCYS
Posté le 21-09-2006 à 09:31:35  profilanswer
 

soif de connaissance a écrit :

Hélas pour moi oui, car la feuille d'origine contient un poil de code :

Private Sub CommandButton1_click()
Sheets("auto" ).Select
Call depart
End Sub


 
C'est juste ces 4 lignes que je voudrais supprimer.


 
C'est bien ce que je te dis essayes le code suivant :
 
 Sheets.Add After:=Sheets(Sheets.Count)
 Sheets("Feuil1" ).Select
 Cells.Copy
 Sheets(Sheets.Count).Select
 Cells.Select
 ActiveSheet.Paste

n°1445683
kiki29
Posté le 21-09-2006 à 11:26:34  profilanswer
 

A adapter avec une gestion d'erreurs adéquate
 


Option Explicit
 
' la Macro à supprimer est nommée ToDelete dans module ModuleA
' Cocher Outils | Références Microsoft Visual Basic for Applications  
Extensibility 5.3
 
Sub DelMacro()
Dim Debut As Long
Dim NbLignes As Long
 
    With ThisWorkbook.VBProject.VBComponents("ModuleA" ).CodeModule
        Debut = .ProcStartLine("ToDelete", vbext_pk_Proc)
        NbLignes = .ProcCountLines("ToDelete", vbext_pk_Proc)
        .deleteLines Debut, NbLignes
    End With
 
End Sub


Message édité par kiki29 le 21-09-2006 à 11:44:53
n°1445698
soif de co​nnaissance
Posté le 21-09-2006 à 11:48:40  profilanswer
 

DamienCYS a écrit :

C'est bien ce que je te dis essayes le code suivant :
 
 Sheets.Add After:=Sheets(Sheets.Count)
 Sheets("Feuil1" ).Select
 Cells.Copy
 Sheets(Sheets.Count).Select
 Cells.Select
 ActiveSheet.Paste


Effectivement ça à l'air de marcher en modifiant la commande du copier coller de la feuille.
 
Merci !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Comment supprimer une macro via une macro ?

 

Sujets relatifs
Editer,modifier et supprimer des enregistrements dans datagrid[vba excel] executer une macro sur un click
[VB/VBA/VBS] Macro Excel - nommer des cellules par lotSupprimer retours à la ligne inutiles
Appeler une macro Word en C#Supprimer un caractère dans une chaîne
macro excel[Résolu] Macro supprimer une colonne
VBA - Macro supprimer ligneMacro autoexec pour supprimer les lignes blanches
Plus de sujets relatifs à : Comment supprimer une macro via une macro ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR