رفقا اخي ... كل عام وانت بخير
بالعكس فأنا اعطيتك مجمل الحل
يتبقى فقط تنسيق رقم وتطبيق الشروط
اما تفصيلك الاخير فالواجب انك بينته في البداية حتى تتضح الرؤية
تفضل وحدة نمطية كاملة حسب رغبتك بالتمام
فاذا لم يتحقق الشرط يأخذ القيمة من الوحدة النمطية القديمة
Private Sub ProductID_AfterUpdate()
Dim x1, x2, x3
x1 = Mid([ProductID], 1, 5)
x2 = Mid([ProductID], 6, 3)
x3 = Mid([ProductID], 9, 3) & "." & Mid([ProductID], 12, 13)
If x1 = 50001 Or x1 = 60001 Or x1 = 70001 Or x1 = 80001 Or x1 = 90001 Then
ProductID = x1
SQty = x2
SalesPrice = x3
Else
With CodeContextObject
.SalesPrice = DLookup("[SalesPrice]", "[ProductsOthers]", "[ProductID] = forms!S![SExtendedDetails].form![ProductID]")
End With
End If
End Sub