Bonjour Dan,
Si tu t'en souviens encore un peu, j'avais un numéro de bon unique un peu spécial.
J'ai du faire une petite connerie quelque part car quand je l'indique , que je remplis l'initial et la date, il m'indique une erreur ici
For Each cel In .DataBodyRange
Depuis la dernière fois, j'ai ajouté cela et cela fonctionnait très bien.
Const BU = 10
Et comme tu peux le voir, j'ai également modifié tous les noms des textbox, ce que j'aurais du faire depuis le début.. Tout a été remplacé automatiquement avec une fonction de Word, donc logiquement pas d'oubli de modification dans le nom des textbox et cbb.
Voilà le code :
Private Sub TBdate_Afterupdate()
Dim cel As Range
If Right(TBbon.Value, 2) = BU Then
With Sheets("SORTIE").ListObjects("TABsortie").ListColumns(2)
For Each cel In .DataBodyRange
If cel.Offset(0, 1) = TBbon.Value And cel.Value = CDate(TBdate.Value) And cel.Offset(0, 3) = TBini.Value Then
TBrem.Value = .DataBodyRange.Item(cel.Row - 16, 12)
Call RemplirListbox
Exit Sub
End If
Next cel
End With
End If
End Sub
________________________________________________________________________
Private Sub TBbon_Change()
Dim strNumBS As String
Dim i As Long, lngLastRowMouvs As Long, y As Long, j As Long
Dim wksMouvs As Worksheet
strNumBS = TBbon.Value
Set wksMouvs = Sheets("SORTIE")
If strNumBS <> "" Then
y = 0
With wksMouvs
LBsortie.Clear
lngLastRowMouvs = .Range("D" & Rows.Count).End(xlUp).Row
For i = 17 To lngLastRowMouvs
If .Cells(i, "D") = strNumBS And TBini.Value = .Cells(i, "F").Value Then
For j = 1 To 10
LBsortie.AddItem
LBsortie.List(y, j - 1) = .Cells(i, j + 1)
Next j
y = y + 1
End If
Next i
End With
End If
Dim cel As Range
Me.TBdate = ""
Me.TBbat = ""
Me.TBrem = ""
If Me.TBbon <> "" Then
Set cel = Sheets("SORTIE").Columns("D").Find(what:=Me.TBbon, LookIn:=xlValues, lookat:=xlWhole)
If Not cel Is Nothing Then
If Right(TBbon.Value, 2) <> BU Then Me.TBdate = cel.Offset(0, -1): Me.TBrem = cel.Offset(0, 10)
Me.TBbat = cel.Offset(0, 1)
Else
End If
End If
Set wksMouvs = Nothing
End Sub
Je ne comprends pas et ça m'agace
Merci