اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

دالة NZ وهي اختصاراً لكلمتي : NULL Zero

ومهمتها أن يتم التخلص من مشكلة وجود القيمة Null في بعض العمليات مما يعطي خطأ

 

صيغتها كما يلي :

A = NZ(B,0)
أو 
A = NZ(B)

S = NZ (V,"")

ومن هذا يتضح أن لهذه الدالة ممران

1- القيمة المطلوب فحصها

2- القيمة المعادة في حال كون القيمة الأولى Null

وفي حال عدم تعيين القيمة الثانية تعيد لنا هذه الدالة القيمة صفر في حال كون القيمة الأولى Null

منقول

  • Like 2
قام بنشر

تطبيقها هنا خاطئ:
آ

=Nz(([sale_price]-[Text58],0)*[sale_qty])

وتطبيقها الصحيح هكذا:
 

=Nz([sale_price],0)-Nz([Text58],0)*Nz[[sale_qty],0)

وإذا أردت ضرب الكمية في ناتج الطرح تكون كالتالي:
=(Nz([sale_price],0)-Nz([Text58],0))*Nz[[sale_qty],0)

 

  • Like 1
  • Thanks 1
قام بنشر
22 ساعات مضت, محمد احمد لطفى said:

في حال عدم تعيين القيمة الثانية تعيد لنا هذه الدالة القيمة صفر

كلام صحيح ولكن اذا استخدمناها في استعلام فلابد من كتابة القيمة البديلة

وفي جميع الاحوال الافضل كتابة القيمة البديلة

تحياتي

  • Thanks 1
قام بنشر (معدل)

عملت فحص للدالة وكانت مخرج الدالة فارغ Empty وليس صفر ، والـ vba يتعامل مع الفارغ كصفر في العمليات الرياضياتية.
 

Debug.Print "*" & Nz(Null) & "*", VarType(Nz(Null)), 2022 + Empty

والنتيجة:
**             0             2022 

 

تم تعديل بواسطه AbuuAhmed
  • Thanks 1
قام بنشر
56 دقائق مضت, AbuuAhmed said:

عملت فحص للدالة وكانت مخرج الدالة فارغ Empty وليس صفر ، والـ vba يتعامل مع الفارغ كصفر في العمليات المحاسبية.

كما اشرت سابقا الاجراء الاسلم استخدام القيمة البديلة وعدم اهمال كتابتها

ولكن العملية الحسابية سوف تعطي نتيجة صحيحة سواء استخدمناها في الكود او في منشئ التعبير

ومن تجربة

ايضا شركة ميكروسوفت اوضحت ذلك في شرح الدالة وان القيمة البديلة هي وسيط اختياري مالم يكن الاستخدام في الاستعلام

 

nz.gif

nz2.gif

لقطة الشاشة 2022-09-03 192238.png

قام بنشر
في 3‏/9‏/2022 at 18:37, AbuuAhmed said:
2022 + Empty

طبعا هذا فحص خاطئ ، حيث من غير المنطقي جمع قيمة مع نوع قيمة.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information