Copie une feuille avec son code et la renommer dans le meme classeur

chaelie2015

XLDnaute Accro
Bonjour FORUM
je cherche un code qui me permet de créer une copie de l'onglet (activé) avec le code de cette feuille et le renommer (cellule bu8) dans le mème classeur.
Merci
 

job75

XLDnaute Barbatruc
je souhaite le modifier, en ajoutant un code qui supprime le code 2 de la feuille copiée.
VB:
Sub ajoutonglet()
Dim deb&, nlig&
Application.EnableEvents = False 'facultatif, pour éviter de masquer la feuille source
ActiveSheet.Copy After:=Sheets(Sheets.Count)
Application.EnableEvents = True
With ActiveSheet
    On Error Resume Next
    .Name = .[BU8]
    With ThisWorkbook.VBProject.VBComponents(.CodeName).CodeModule
        deb = .ProcStartLine("Worksheet_Deactivate", 0)
        nlig = .ProcCountLines("Worksheet_Deactivate", 0)
        .DeleteLines deb, nlig 'supprime le code de la macro Worksheet_Deactivate
    End With
End With
End Sub
Attention, pour que l'accès au VBAProject soit possible par macro il faut avoir coché l'option :

- sur Excel 2003 et versions antérieures Faire confiance au projet Visual Basic (menu Outils-Macro-Sécurité-Editeurs approuvés)

- sur Excel 2007 et versions suivantes Accès approuvé au modèle d'objet du projet VBA (onglet Fichier-Options-Centre de gestion de la confidentialité-Paramètres...-Paramètres des macros).
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 848
Membres
103 973
dernier inscrit
okoazer