Bonjour à tous

Voila j'ai un code qui fonctionnait très bien jusque là sauf que depuis que j'ai eu le malheur d'ajouter une ligne toute simple il s'arrête sans message d'erreur ni d'alerte.
(le code est placé dans un module)

J'ai mis le début. La dernière ligne étant celle sur laquelle il s'arrête...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Option Explicit
 
Public Sub generer()
 
Dim nom_feuille, Ex_direct, Ex_indirect, Ex_question, Ex_detail, Ex_interp As String
Dim nom_G, nom_P As String
Dim i As Integer
Dim h As Integer
Dim k As Integer
Dim MAJ As Boolean
Dim Mise_aJ
Dim nom_F As String
 
nom_F = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 4)
 
If ThisWorkbook.Worksheets.Count > 2 Then
    Mise_aJ = MsgBox("Voulez vous mettre à jour les données des feuilles déjà créées?", vbYesNoCancel)
    Select Case Mise_aJ
        Case vbYes
            MAJ = True
        Case vbNo
            MAJ = False
        Case Else
            Exit Sub
    End Select
End If
'On Error Resume Next
'Application.DisplayAlerts = False
'Application.ScreenUpdating = False
Sheets("DRAFT").Visible = True
Sheets(2).Name = nom_F
La feuille est bien renommé mais le code s'arrête. Il n'y a pas d'autre code dans le classeur.
DAns la suite du code je crée et renomme d'autres feuilles et je n'ai jamais eu de problème...

Une idée? Merci d'avance

EDIT:
Il n'y a aucune protection, et même en écrivant Sheets(2).Name = "Essais" l'exécution s'interrompt