Option Explicit
Sub Nouveau_Numero()
Dim i As Long, tbl, num
Application.ScreenUpdating = False
'Inscrire le numéro de B2 à A2
num = Sheets(3).Range("a2").Value
With Sheets(1)
tbl = .Range("e2:e" & .Range("e" & Rows.Count).End(xlUp).Row)
For i = LBound(tbl, 1) To UBound(tbl, 1)
If Trim(tbl(i, 1)) = "" Then
tbl(i, 1) = "P" & num
num = num + 1
End If
Next
.Range("e2:e" & Range("e" & Rows.Count).End(xlUp).Row) = tbl
End With
'Et là c'est le dernier numéro incrémenté
Sheets(3).Range("a2") = num
End Sub