Re salut,
Je viens de tester, ca résoud le probleme de la sélection entière de la ligne mais ca choisi toujours la dernière ligne et pas la ligne qui s'enregistre sur le tableau.
NumL représente effectivement la dernière ligne du tableau mais on dirait qu'il ne tient pas en compte le classement alphabétique de ma fonction "Custsort"
Public Sub CustSort(ByVal DataName As Range, Data As Range, Crit_Cel As String, Order As Byte)
Data.Sort key1:=Columns(DataName.Find(Crit_Cel).Column), order1:=Order
End Sub
Private Sub Save_Click()
Dim Ind As Integer
Dim j As Integer
Dim NumL As Long ' Détection dernière ligne du tableau + 1 avec la fonction OFFSET(Ligne, Colonne)
' Avec la feuille Info_Clients
With Sheets("Info_Clients")
' Prochaine ligne vide
NumL = .Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Row
' Références de la fonction Copyformat (copie Ligne3, sur la ligne NumL)
CopyFormat .Rows("3"), .Rows(NumL)
' Pour les textbox n°1 à 14
For Ind = 1 To 14
' Inscrire les valeurs
.Cells(NumL, Ind).Value = Me("Textbox" & Ind).Value
Next Ind
' Modèle / Immat
For Ind = 15 To 16
.Cells(NumL, 2 + Ind).Value = Me("Textbox" & Ind).Value
Next Ind
' ETC ...
' Références de la fonction CustSort
'(Ligne de ttes les entêtes, BDDonnées, Entete ou faut appl. le tri, ordre 1 = ascendant)
.Select
CustSort .Rows("2"), .Rows("4:" & NumL), .Range("a2"), 1
Cells(NumL, 1).Select
End With
Sheets("Info_Clients").Select
MsgBox "Update completed" & Chr(10), vbInformation
Unload Me
End Sub