Bonjour Bouddha62
Théoriquement dans Excel, les cellules sont toutes protégées par défaut. Cependant, tant que la feuille elle-même n'est pas protégée, la protection des cellules est inactive.
Donc pour répondre à ta question, il faut que tu dé-protèges les cellules que tu veux laisser libre à la saisie, puis que tu protèges ensuite la feuille.
Attention !!! il faut également modifier légèrement le code...
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
' Ajouter cette ligne pour de-proteger le temps d'inscrire la formule en colonne A
ActiveSheet.Unprotect
If Target <> "" Then
Target.Offset(0, -1) = "a" & WorksheetFunction.Text(WorksheetFunction.CountA(Range("B2:B" & Target.Row)), "000000")
Else
Target.Offset(0, -1) = ""
End If
' Ajouter cette ligne pour reproteger la feuille une fois la colonne A modifiee !
ActiveSheet.Protect
End If
End Sub