Bonjour du Terre-fort,
Le numéro suit bien la logique .
Vous ne pouvez pas avoir un tri sur la date et sur le n° d'ordre en même temps .
Tel que c'est conçu, la nouvelle saisie peut prendre un n° existant ...
Imaginez que vous supprimez la ligne 3,
si vous donnez le nombre de lignes existantes + 1 à votre numéro d'ordre pour une nouvelle saisie,
vous allez avoir les 2 dernières lignes avec le même n° d'ordre .
Vous pouvez contourner le pb en altérant le code de l'userform dans la CommandButton1_Click :
[Tableau1].Item(derniereLigne, 1) = Application.Max([Tableau1[N°]]) + 1
mais cela n'empêchera pas votre table d'être présentée
selon l'ordre de tri (colonne B = date ) qui suit dans le code:
ws.Range("B4:K" & derniereLigne).Sort key1:=ws.Range("B4"), _
order1:=xlAscending, Header:=xlYes
Personnellement, pour être plus "rigoureux" ,
j'aurai fait un n° d'ordre du type Stamp (Timbre chronologique) .
La clé serait du genre 202302101340-1 ( première saisie le 10 Février 2023 à 13:40 )