Bonsoir Juju_ski, bonsoir le forum,
Il y a plein de choses que je ne comprends pas dans ton code :
• Pourquoi ces lignes pour les codes obligatoire alors que la propriété [Tag] de tous les contrôle est vide ?
On Error Resume Next
'VERIFICATION DES SAISIES
For Each Ctrl In Me.Controls
If Ctrl.Tag = "Obligatoire" Then
If Ctrl.Text = "" Then
If ChampsManquants <> "" Then ChampsManquants = ChampsManquants & ", "
ChampsManquants = ChampsManquants & Ctrl.Name
End If
End If
Next Ctrl
If ChampsManquants <> "" Then
MsgBox "Les champs suivants sont nécessaires à l'application et n'ont pas été remplis:" & vbCrLf & ChampsManquants, vbOKOnly + vbInformation, "Champs manquants ou incorrects"
Exit Sub
End If
• pourquoi insérer une ligne ?
'Dernière ligne du tableau
Ln = .Range(" C" & Rows.Count).End(xlUp).Row
' ------------- Trouve la fin de plage pour insérer une ligne puis effectuer le tri --------------
For Each c In .Range("C" & DebPlage & ":C" & Ln)
If DebPlage >= Ln Then
DebPlage = c.Row + 1
' Fin de plage
FinPlage = c.Row + 1
'Insertion d'une ligne
Rows(FinPlage).Insert Shift:=xlDown
Call Ecriture
Exit For
End If
Next c
Tu parle d'effectuer le tri. Je ne vois aucun tri. Ne pourrais-tu pas simplement écrire dans la première ligne vide du tableau ?
Sinon, je te propose un code différent dans ton fichier modifié en pièce jointe. J'ai défini la propriété [Tag] = "Obligatoire" uniquement sur les contrôles Cbbtype et Txtnserie. Il te faudra la définir ainsi pour tous les champs que tu veux rendre Obligatoire.
Le service pour déposer un fichier en pièce jointe étant pour le moment indisponible je réessaierai plus tard
Je regarde pour ton problème numéro 2...