Déverouiller un onglet, le copier, puis re-proteger l'onglet

Bonjour le forum,

j'essaye de reprotéger un onglet copié dans un classeur après copie,

Donc :

je déprotège l'onglet du wb1

je copie les valeurs de cet onglet dans un nouveau wb

je vérouille de nouveau l'onglet du wb1

la dernière partie me pose problème, voici mon code :

Sub Sauver_onglet()
  Dim Wb As Workbook
  Dim shtName As String
  Dim Wbe As Workbook

  ' Récupérer le nom de l'onglet
  shtName = Sheets("sheet1").Range("F2").Value
  ' le déverrouiiler
  Sheets(shtName).Unprotect "mdp"
  Set Wbe = ThisWorkbook

  ' Le copier
  ThisWorkbook.Sheets(shtName).Copy
  Set Wb = ActiveWorkbook
  With Wb.Sheets(1).Cells
    .Copy
    .PasteSpecial Paste:=xlPasteValues
  End With

  ' Le re-vérouiller
  ActiveWorkbook = Wbe.Select
  Sheets(shtName).Protect Password:="mdp"

End Sub

en résumé, comment re-sélectionner le wb de départ (en sachant que selui-ci n'aura pas toujours le même nom)?

Merci d'avance

Bonjour,

  ' Le re-vérouiller
  Wbe.Activate
  Sheets(shtName).Protect Password:="mdp"

Plusieurs façon de l'ecrire mais comme tu as deja fait "Wbe".
ThisWorkbook sera toujours le classeur qui contient la macro

A+

Bonjour

Je n'ai pas tout saisi.

Ce que j'ai compris, tu as un classeur Wbook1 avec un onglet Wsheet1, protégé, que tu veux recopier sur un classeur Wbook2.

La macro se lance t elle toujours sur le même classeur ou faut il l'ouvrir en début de procédure ?

Wbook2 existe t il ? Faut il le créer ? Si oui sous quel nom? Faut il aussi l'ouvrir, La feuille copiée conserve t elle le même nom dans les deux classeurs ?

Refermer et protéger ne posent pas de problème

Merci pour tes précisions

Cordialement

FINDRH

Bonjour

Sauf exception... pas besoin de déprotéger pour copier !

A+

Bonjour a tous,

Merci Beaucoup Geof52, cela fonctionne parfaitement.

Rechercher des sujets similaires à "deverouiller onglet copier puis proteger"