Deplacé un onglet dans un autre classeur
Bonjour à tous ,
je recherche la possibilité de deplacé dans un classeur "archive1" certains onglets du classeur "test" . Les onglets auront une date comme nom et donc changerons à chaque fois , j'ai récupéré sur le site une macro qui correspond seulemet à un détaille pret, il faut que l'onglet est tout le temps le même nom ( malheuresement ce n'est pas le but ). si qu'elqu'un peut m'aider merci d'avance .
ci-joint le code vba et je joint les classeurs
Sub CommandButton1_Click()
Dim sh As Worksheet, sh2 As Worksheet
Dim NomFeuilleDestination As String
Set sh = Sheets("BREAKSHEET") 'Feuille à copier
NomFeuilleDestination = "BREAKSHEET"
'Ouvrir le classeur destination
Workbooks.Open Filename:=ThisWorkbook.Path & "\archive1.xlsm"
' Empêcher les avertissements excel
Application.DisplayAlerts = False
' Eviter le message d'erreur si la feuille destination n'existe pas
On Error Resume Next
' Tester si la feuille Destination existe
Set sh2 = ActiveWorkbook.Sheets(NomFeuilleDestination)
' Si elle existe on l'a supprime
If Not sh2 Is Nothing Then sh2.Delete
'Rétablir la gestion normale des erreurs
On Error GoTo 0
' Rétablir les avertissements
Application.DisplayAlerts = True
'Coller la feuille Origine dans le classeur destination
sh.Copy After:=Workbooks("archive1.xlsm").Sheets(Sheets.Count)
With ActiveSheet
.UsedRange.Copy
.UsedRange.Range("A1").PasteSpecial xlPasteValues
.Name = NomFeuilleDestination
.Protect Password:="mdp", DrawingObjects:=False, Contents:=True, Scenarios:=False
.Range("D9").Select
End With
Application.CutCopyMode = False
ActiveWorkbook.Save
End Sub
Bonjour,
Faché avec les balises... dommage !
Et on la devine comment dans ce processus quel est l'onglet à copier ???
Une boule de cristal
A+
salut , malgré mes 50 visites comme tu dit , je ne suis toujours pas un expert ( les balises je ne connais pas ) honte à moi je suppose .
j'ai peut pêtre pensé naivement qu'il etait possible de remplaçer le nom de l'onglet par "active sheet " ou un truc comme ça .
Bonjour Auberoui,
les balises de code, c'est pas dans ton code VBA mais dans la fenêtre d'édition du post :
1) mets ton curseur de texte là où tu veux mettre ton code VBA
2) clique sur le bouton (voir l'image ci-dessous)
3) mets ton code VBA entre ce qui a été ajouté
' mettre le code VBA ici
note qu'un nom de balise est toujours entre crochets ; autre exemple si tu cliques sur le :
* ça met b et /b entre crochets ; le 1er signifie « début de mise en gras » (bold en anglais)
* les caractères qui suivent la balise de début seront en gras (clique sur le bouton Aperçu)
* « / » devant le nom ➯ balise finale ; /b signifie « arrêt de mise en gras »
est le bouton pour la mise en italiques (italic) ➯ i et /i
est le bouton pour souligner (underline) ➯ u et /u
voilà : avec tout ça, tu vas devenir un expert en balises de code !
(et t'auras plus d'excuses pour mal présenter ton code VBA !
dhany