Bonjour,
j'ai, avec l'aide de virtuoses d'excel,
adapter une macro pour Excel 2007 qui fonctionne très bien pour la gestion de stock à partir de bon de livraison.
Ma question est : comment puis-je bloquer le décompte de stock si en colonne F18:F24 j'ai le mot garantie.
Si pas garantie, je souhaite activer le décompte du stock.
D'avance merci à tous.
Sub MAJSTOCK()
Dim ligne As Integer: ligne = 2
Dim valeur_stock As Integer: valeur_stock = 0
Dim valeur_demandee As Integer: valeur_demande = 0
Rem Dim ref_prod As String: Dim ref_BL As Sting
Dim choix_utilisateur As Byte
While (Worksheets("Refprod").Cells(ligne, 3).Value <> "")
valeur_stock = Worksheets("Refprod").Cells(ligne, 3).Value
ref_prod = Worksheets("Refprod").Cells(ligne, 2).Value
For Each cellule In Worksheets("Matrice BL").Range("D1824")
If (cellule.Value = ref_prod) Then
valeur_demandee = Worksheets("Matrice BL").Cells(cellule.Row, 5)
If (valeur_demandee > valeur_stock) Then
MsgBox ("La référence " & cellule.Value & " ne possède pas assez de stock")
test = True
End If
End If
Next cellule
ligne = ligne + 1
Wend
If (test = True) Then
Exit Sub
Else
choix_utilisateur = MsgBox("Le BL semble bon, souhaitez-vous mettre à jour le stock ?", vbYesNo)
If (choix_utilisateur = 6) Then
For Each cellule In Worksheets("Matrice BL").Range("D1824")
ligne = 2
While (Worksheets("Refprod").Cells(ligne, 3).Value <> "")
If (cellule.Value = Worksheets("Refprod").Cells(ligne, 2).Value) Then
Worksheets("Refprod").Cells(ligne, 3).Value = Worksheets("Refprod").Cells(ligne, 3).Value - ThisWorkbook.Worksheets("Matrice BL").Cells(cellule.Row, 5).Value
End If
ligne = ligne + 1
Wend
Next cellule
Else
Exit Sub
End If
End If
End Sub
j'ai, avec l'aide de virtuoses d'excel,
adapter une macro pour Excel 2007 qui fonctionne très bien pour la gestion de stock à partir de bon de livraison.
Ma question est : comment puis-je bloquer le décompte de stock si en colonne F18:F24 j'ai le mot garantie.
Si pas garantie, je souhaite activer le décompte du stock.
D'avance merci à tous.
Sub MAJSTOCK()
Dim ligne As Integer: ligne = 2
Dim valeur_stock As Integer: valeur_stock = 0
Dim valeur_demandee As Integer: valeur_demande = 0
Rem Dim ref_prod As String: Dim ref_BL As Sting
Dim choix_utilisateur As Byte
While (Worksheets("Refprod").Cells(ligne, 3).Value <> "")
valeur_stock = Worksheets("Refprod").Cells(ligne, 3).Value
ref_prod = Worksheets("Refprod").Cells(ligne, 2).Value
For Each cellule In Worksheets("Matrice BL").Range("D1824")
If (cellule.Value = ref_prod) Then
valeur_demandee = Worksheets("Matrice BL").Cells(cellule.Row, 5)
If (valeur_demandee > valeur_stock) Then
MsgBox ("La référence " & cellule.Value & " ne possède pas assez de stock")
test = True
End If
End If
Next cellule
ligne = ligne + 1
Wend
If (test = True) Then
Exit Sub
Else
choix_utilisateur = MsgBox("Le BL semble bon, souhaitez-vous mettre à jour le stock ?", vbYesNo)
If (choix_utilisateur = 6) Then
For Each cellule In Worksheets("Matrice BL").Range("D1824")
ligne = 2
While (Worksheets("Refprod").Cells(ligne, 3).Value <> "")
If (cellule.Value = Worksheets("Refprod").Cells(ligne, 2).Value) Then
Worksheets("Refprod").Cells(ligne, 3).Value = Worksheets("Refprod").Cells(ligne, 3).Value - ThisWorkbook.Worksheets("Matrice BL").Cells(cellule.Row, 5).Value
End If
ligne = ligne + 1
Wend
Next cellule
Else
Exit Sub
End If
End If
End Sub
Dernière édition: