وعليكم السلام ورحمة الله وبركاته
في صفحة مبيعات اكتب عدد صتف قمت ببيعة بتم انقاصه من المخزن وان كررت الصنف يتم انقاصه كذلك
في حالة كتابة اسم الصنف خطأ تاتى رسالة بذلك
في حالة عدد المبيع اكبر ما هو موجود بالمخزن تاتى رسالة بذلك
الكود
Private Sub Worksheet_Change(ByVal Target As Range)
Dim wsMokhzan As Worksheet
Dim wsMabieat As Worksheet
Dim productName As String
Dim soldQuantity As Long
Dim foundCell As Range
Set wsMokhzan = ThisWorkbook.Sheets("مخزن")
Set wsMabieat = ThisWorkbook.Sheets("مبيعات")
If Not Intersect(Target, wsMabieat.Range("E5:E" & wsMabieat.Cells(wsMabieat.Rows.Count, "E").End(xlUp).Row)) Is Nothing Then
Application.EnableEvents = False
For Each cell In Intersect(Target, wsMabieat.Range("E5:E" & wsMabieat.Cells(wsMabieat.Rows.Count, "E").End(xlUp).Row))
If IsNumeric(cell.Value) And cell.Value > 0 Then
productName = cell.Offset(0, -1).Value
soldQuantity = cell.Value
Set foundCell = wsMokhzan.Range("B4:B" & wsMokhzan.Cells(wsMokhzan.Rows.Count, "B").End(xlUp).Row).Find(What:=productName, LookIn:=xlValues, LookAt:=xlWhole)
If Not foundCell Is Nothing Then
If wsMokhzan.Cells(foundCell.Row, "C").Value >= soldQuantity Then
wsMokhzan.Cells(foundCell.Row, "C").Value = wsMokhzan.Cells(foundCell.Row, "C").Value - soldQuantity
Else
cell.Value = ""
cell.Value = ""
End If
Else
MsgBox "المنتج " & productName & " غير موجود في المخزن", vbExclamation
cell.Value = ""
End If
End If
Next cell
Application.EnableEvents = True
End If
End Sub
الملف
طرح المباع من المخزن.xlsb