Bonjour,
Mes meilleurs vœux pour cette nouvelle année.
Essaie ainsi :
Option Explicit
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim lCount As Long
lCount = Replace(Sh.CodeName, "Feuil", "")
Select Case lCount
Case 1 To 19:
If Sh.Cells(2, 3).Value = 0 Then
MsgBox "Vous allez nommer cette feuille ''0'' car c'est cette valeur qui figure dans C2 !", 16
End If
Sh.Name = Cells(2, 3).Value
Case Else:
End Select
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Const RNG As String = "$E$5:$E$52"
Dim lCount As Long
lCount = Replace(Sh.CodeName, "Feuil", "")
Select Case lCount
Case 1 To 19:
If Target.CountLarge > 1 Then Exit Sub
If Not Intersect(Target, Sh.Range(RNG)) Is Nothing Then
If Not IsEmpty(Target) Then
With Target
.Offset(, 1).Value = FormatDateTime(Time, vbShortTime)
.Offset(, 2).Value = FormatDateTime(Date, vbShortDate)
End With
End If
End If
Case Else:
End Select
End Sub