Bonjour,
Je débute avec le VBA excel et je dois travailler sur un projet qui existe déjà et je dois en rajouter des fonctionnalités.
J'essaye de rajouter un menu contextuel qui me sert de copier le contenu d'une feuille et me le dupliquer dans une autre feuille.
Pour infos la première feuille est protégée.
J'ai ajouté le code suivant à mon projet dans la partie initialisation des variables "open" du WorkBook :
Private Const DupliquerLaFeuille As String = "Dupliquer La Feuille"
et j'ai rajouté :
1 2 3 4 5 6 7 8
|
Application.CommandBars("Cell").Reset
With Application.CommandBars("Cell").Controls.Add(msoControlButton)
.BeginGroup = True
.Caption = DupliquerLaFeuille
.OnAction = "DupliquerLaFeuille"
End With |
J'ai rajouté la fonction "DupliquerLaFeuille" à la fin du module sachant que j'ai un seul module qui contient toutes les fonctions et je ne sais pas si j'ai bien fait ou pas car je voulais pas toucher au code du projet :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Public Sub DupliquerLaFeuille()
Dim ongletACopier As String
Dim nouvelOnglet As String
Dim derniereColonneTableau As Integer
Dim derniereLigneTableau As Integer
Dim ligneCourante As Integer
ongletACopier = ActiveSheet.Name
Sheets(ongletACopier).Select
Dim sheet As Worksheet
Set sheet = Sheets.Add
nouvelOnglet = "Feuille Dupliquée " & Sheets.count
sheet.Select
sheet.Name = nouvelOnglet
Sheets(ongletACopier).Select
Cells.Select
Selection.Copy
Range("A1").Select
Sheets(nouvelOnglet).Select
Cells.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A1").Select
End Sub |
Le problème est que je ne vois pas le menu contextuel que j'ai ajouté quand je clique droit sur ma feuille et du coup je ne peux dupliquer ma feuille.
Mais par contre quand je débogue la fonction ça marche j'ai ma feuille dupliquée qui se rajoute dans un nouvel onglet.
Je débute vraiment dans ce langage là et j'espère avoir votre aide pour résoudre ce problème .
Merci
Partager