Bonsoir germany1970.
Ce que banana32 (que je salue amicalement) voulait vous faire comprendre, c'est qu'il faut tester les données d'entrée, celles que vous avez mises dans un TextBox, et je me demande bien pourquoi.
Comme vous avez fait un bel effort, je vais vous donner un code testé.
Public Class Accueil
Private Txt As String
Private Sub bTst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bTst.Click
Dim TxtI As String, Ok As Boolean, Msg As String
Txt "999-F-SOC" : TxtI Incrémenté(Txt, Ok)
If Ok Then Msg TxtI Else Msg "Erreur"
MessageBox.Show(Msg)
End Sub
Private Function Incrémenté(ByVal Txt As String, ByRef Ok As Boolean) As String
Dim TxtL As String "", TxtC As String "", x As Integer
Ok (Txt.Length 9)
If Ok Then TxtL Txt.Substring(3) : TxtC Txt.Substring(0, 3)
If Ok Then Ok = Integer.TryParse(TxtC, x)
If Ok Then Ok = x < 999
If Ok Then x +1 : TxtC x.ToString.PadLeft(3, CChar("0"))
Return TxtC & TxtL
End Function
End Class
pour le code fournisseur 000-F-SOC. Comme je n'aime pas les notations longues d'ici jusqu'à Pontoise, je les ai raccourcies
Txt : code fournisseur
TxtL : partie littérale du code fournisseur
TxtC : partie numérique du code fournisseur
D'autre part vous aurez compris que bTst est un bouton de commande.
Cordialement.
Étant illettré, je signe d'une croix : ×