Private Sub MajInventaire()
Dim QS&, n&
With Worksheets("Inventaire")
n = UBound(TblInv): lgS = 0: lgD = 0
GetLig ComboBox1, n, lgS: If lgS = 0 Then Exit Sub
GetLig ComboBox2, n, lgD: flgAdd = 0
If lgD = 0 Then
flgAdd = -1: lgD = n + 3
If lgD = 65000 Then
MsgBox "Le tableau en feuille Inventaire est plein !", 48
lgD = 0: Exit Sub 'on fait rien, et on sort de la sub !
End If
End If
Application.ScreenUpdating = 0: .Unprotect: QT = Val(Quantitetr)
With .Cells(lgS, 3)
QS = .Value - QT: .Value = QS ': stocktr = QS
End With
With .Cells(lgD, 3)
If flgAdd Then
.Offset(, -2) = CB_Pièce 'Code article
.Offset(, -1) = catetr 'Catégorie
.Offset(, 2) = Val(seuil) 'Seuil d'alerte
.Offset(, 3) = Desitr 'Descriptif
.Offset(, 4) = reftr 'Référence
.Offset(, 5) = unitr 'Unité de mesure
.Offset(, 6) = "Transfert" 'Observations
.Offset(, 9) = ComboBox2 'Magasin
End If
QD = Val(.Value) + QT: .Value = QD 'Stock actuel
End With
.Protect: Application.ScreenUpdating = -1
End With
End Sub