Re,
dans cette fonction tu utilises columns.copy ça te recopie toutes tes colones dans une feuille existante WsName. Avec cette copie tu perds tout ce qui est directement attaché à la feuille (macros worsheet_Activate, commandbutton...)  
| sakuraba a écrit : 
 
 | Code : 
 Sub RecupNomOnglet()    Dim WsName As String    WsName = ActiveSheet.Name     Sheets("Base" ).Columns.Copy Sheets(WsName).Columns    ' Entre le nom du chantier ds la cellule A1     Sheets(WsName).Range("A1" ).Value = WsNameEnd Sub
 | 
 
 | 
Si tu fais :
| Code : 
 Sub RecupNomOnglet()    Dim WsName As String    WsName= "Nouvelle feuille"     Sheets("Base" ).Copy After:=Sheets(3)    ' Entre le nom du chantier ds la cellule A1     Activesheet.Name = WsName     Sheets(WsName).Range("A1" ).Value = WsNameEnd Sub
 | 
Ca te crée directement ta nouvelle feuille, il faut que tu trouves dans la code juste avant ce qui t'a permis d'avoir la nouvelle feuille et l'enlever.
 
 
 
Edit : le sheets(X). copy ne marche pas sur une feuille déjà existante.
 
 ---------------
			
Je bidouillle c'est sur... Mais j'essaye de faire en sorte que ça marche ;-)