الدالات Functions الوظائف المنطقية (Logical functions)
العبارات (Statement) :
العبارة هي تعبير رياضي يكون إما صح (True) أو خطأ (False) على
سبيل المثال العبارة التالية =(B2>40) هي عبارة تقبل أن تكون إما صح أو
خطـــــــــــــــأ أي اذا كانت الخلية B2 أكبر من 40 تكون العبارة True
أما اذا كانت العبارة أصغر تكون False.
تابع أل و (And) : عبارة عن تابع يأخذ عبارتين يكون البرهان فيهما صح
(True) اذا كانت العبارتيـــن صح (True) مثال على ذلك *
**=And(B2>40,C2<20).
تابع أل أو (Or) :عبارة عن تابع يأخذ عبارتين يكون البرهان فيهما صح (True)
إذا كانـــت أحد العبارتين صحيحة مثال على ذلك
=Or(Sum(D211)>500,F3=”Sales”).
تابع النفي (Not) : تابع يأخذ عبارة واحدة تكون صحيحة (True) إذا كانت
العبارةخطــــأ.
مثال على ذلك =Not(E2=”HR”) .
العبارات المركبة (Compound Statements) :
هي العبارة التي تحوي على تابعين معا مثل (And , Or) مثال على
ذلكــــــــــــ :
=And (Or (B2=45,C2<20), Or (E2=”Mktg”, E2=”Legl” .
التكافئيات المنطقية (Logical Equivalencies) :
هناك عبارات تكتب ولكن أحيانا تكون طويلة لذلك في هذه الحالة
نستبدل هذه العبارات بعبارات أبسط نسميها العبارات التكافئية وهنا بعض
الأمثلة على ذلك :
=Or (W2>30,W2=30) ó =(W2>=30)
=Or (W2<30,W2=30) ó =(W2<=30)
=Not (W2=30) ó =(W2<>30)
=(W2>30) ó =Not (W2<=30)
=And (Not (E2=”Mktg”) Not (F2=”Toronto”)) ó
=Not(Or(E2=”Mktg”,F2=”Toronto”))
=Or (Not(E2=”Mktg”) ,Not (F2=”Toronto”)) ó
=Not(And(E2=”Mktg”,F2=”Toronto”))
عبارة إذا الشرطية (IF Statement) :
عبارة إذا وظيفتها تعطي قيمة لمتحول ما X *إذا كانت العبارة
صحيحة و تعطــــي لمتحول آخر Y *قيمة إذا كانت العبارة خاطئة
.مثال على ذلك :
=if (D5=”New York” , 65 , 90) عبارة إذا تقسم الى ثلاثة
أقسام :
القسم الأولــــ: Logical_test وهو العبارة المطروحة (الشرط).
القسم الثاني: Value_if_true *إذا كانت العبارة صح نعطي المتحول
القيمة الأولى المعطاة له.
القسم الثالث: Value_if_false إذا كانت العبارة خطأ نعطي المتحول
القيمة الثانية المعطاة له.
في المثال الذي ذكر اخترنا الخانة C3 ووضعنا فيه الصيغة المذكورة أي إذا
كانت الخانة B5 =New York *فستكون قيمة الخانة C3 هي 65 أما إذا لم تكن
الخانــــة B5 = New York فستكون قيمة الخانة C3 هي 90
استخدام عبارة And *مع عبارة IF :
يمكن استخدام عبارة And *مع عبارة IF *كما في المثال
التالـــــــي:
=IF (And ( B2>40 ,C2<20),C2+50 , D2)
استخدام عبارة Or *مع عبارة IF :
يمكن استخدام عبارة Or *مع عبارة IF *كما في المثال
التالـــــــــي:
=IF (Or ( B2>40 ,C2<20),C2+50 , D2)
استخدام عبارة Not *مع عبارة IF :
يمكن استخدام عبارة And *مع عبارة IF *كما في المثال
التالــــــي:
=IF (Not ( E2 = “MK“ ) ,C2+50 , D2)
استخدام عبارة IF *مرتين في نفس العبارة كما في المثال التالي ((Nested If :
= IF (D2>700,D2*1.1 , IF(D2>400,D2*1.2,D2*1.3))
مثال:
توابع التاريخ و الوقت:DATE
إرجاع الرقم التسلسلي المتتالي الذي يمثل تاريخاً محدداً. إذا كان تنسيق
الخلية عام قبل إدخال الدالة، يتم تنسيق النتيجة كتاريخ.
DATE(year,month,day)
DAYS360: إرجاع عدد الأيام بين تاريخين استناداً إلى سنة تتكون من 360
يوماً (اثنا عشر شهراً يتكون كلٌ منها من 30 يوم)، الذي يتم استخدامه في
بعض العمليات المحاسبية. استخدم هذه الدالة في حساب دفعات السداد إذا كان
نظام المحاسبة الذي تستخدمه مستنداً إلى اثنى عشر شهراً يتكون كلٌ منها من
30 يوم.
بناء الجملة: DAYS360(start_date,end_date)
Start_date (تاريخ البدء) و end_date (تاريخ النهاية) التاريخان اللذان
تريد معرفة عدد الأيام بينهما. إذا وقع start_date بعد end_date، تقوم
DAYS360 بإرجاع رقماً سالباً. يراعى إدخال التواريخ باستخدام الدالة DATE ،
أو باستخدام نتائج لصيغ و دالات أخرى. على سبيل المثال، استخدم DATE
(2001,5,23) لإدخال اليوم الثالث والعشرين من مايو، 2001. قد تحدث مشاكل
عند إدخال التواريخ كنص.
NOW: إرجاع الرقم التسلسلي للتاريخ والوقت الحالي. إذا كان تنسيق الخلية
عام، قبل إدخال الدالة، يتم تنسيق النتيجة كتاريخ.
بناء الجملة: NOW( )=
TODAY: إرجاع الرقم التسلسلي للتاريخ الحالي. والرقم التسلسلي عبارة عن
شفرة التاريخ والوقت التي يستخدمها Microsoft Excel لحسابات التاريخ
والوقت. إذا كان تنسيق الخلية عام قبل إدخال الدالة، يتم تنسيق النتيجة
كتاريخ.
بناء الجملة: TODAY( )=
تعامل الصيغ مع دالات التاريخ و الوقت:PV: لإرجاع القيمة الحالية للاستثمار. القيمة الحالية هي القيمة الإجمالية
التي تساوي سلسة دفعات السداد المستقبلية. على سبيل المثال، عندما تقوم
باقتراض مبلغ من المال، تكون قيمة القرض هي القيمة الحالية للمقرض.
بناء الجملة: PV(rate,nper,pmt)
Rate (المعدل) معدل الفائدة لكل فترة زمنية.
Nper العدد الإجمالي لفترات السداد في السنة.
Pmt دفعة السداد التي يتم سدادها كل فترة زمنية ولا يمكن تغييرها خلال
مدة الأقساط.
ABS: إرجاع القيمة المطلقة لرقم. والقيمة المطلقة لرقم هي الرقم دون إشارة.
بناء الجملة: ABS(number)
Number: الرقم*هو العدد الحقيقي الذي تريد قيمته المطلقة.
INT: تقريب رقم لأسفل إلى أقرب عدد صحيح.
بناء الجملة: INT(Number)
Number العدد الحقيقي الذي تريد تقريبه لأسفل إلى عدد صحيح.
POWER: إرجاع النتيجة لرقم مرفوع إلى أس.
بناء الجملة: POWER(number,power)
Number رقم الأساس. يمكن أن يكون أي رقم حقيقي.
Power**الأس الذي يتم رفع رقم الأساس إليه.
PRODUCT: لضرب كافة الأرقام المقدمة كوسائط وإرجاع الناتج.
بناء الجملة: PRODUCT(number1,number2,...)
Number1, Number 2،... الأرقام من 1 إلى 30 التي تريد ضربها.
ROUND: لتقريب رقم بعدد محدد من الخانات.
بناء الجملة: Round(number, Num_digit)
Number (العدد) العدد الذي تريد تقريبه.
Num_digits**يحدد عدد الخانات التي تريد تقريب العدد بها.
ملاحظات:
إذا كانت num_digits أكبر من 0 (صفر)، يتم تقريب الرقم حينئذ إلى عدد معين
من المنازل العشرية.
إذا كانت num_digits يساوي 0، يتم تقريب الرقم حينئذ إلى أقرب عدد صحيح .
ROUNDDOWN: تقريب العدد إلى أسفل في اتجاه صفر.
بناء الجملة: Rounddown(Number, num_digit)
Number (العدد) أي عدد صحيح تريد تقريب لأسفل.
Num_digits عدد الخانات التي تريد تقريب الرقم بها .
ملاحظات تسلك ROUNDDOWN نفس سلوك ROUND، باستثناء أنها دائماً تقرب العدد لأسفل.
إذا كانت num_digits أكبر من 0 (صفر)، يتم تقريب العدد حينئذ لأسفل بعدد
المنازل العشرية المحدد.
إذا كانت num_digits 0، يتم تقريب العدد حينئذ لأسفل إلى أقرب عدد صحيح .
إذا كانت num_digits أصغر من 0، ً يتم تقريب العدد حينئذ لأسفل إلى يسار
النقطة العشرية.
إذا كانت num_digits أصغر من 0، يتم تقريب الرقم حينئذ إلى يسار النقطة
العشرية.
Roundup: لتقريب العدد لأعلى بعيداً عن 0 (صفر).
بناء الجملة: Roundup(Number, num_digit)
Number (العدد) أي عدد حقيقي تريد تقريبه لأعلى.
Num_digits عدد الخانات التي تريد تقريب الرقم إليها .
ملاحظات:
تسلك ROUNDUP نفس سلوك ROUND، باستثناء أنها دائماً تقرب العدد لأعلى.
إذا كانت num_digits أكبر من 0 (صفر)، يتم تقريب العدد حينئذ لأعلى بعدد
محدد من المنازل العشرية.
إذا كانت num_digits 0، ً يتم تقريب العدد حينئذ إلى أقرب عدد صحيح.
إذا كانت num_digits أصغر من 0، ً يتم تقريب العدد حينئذ لأعلى إلى يسار
النقطة العشرية.
SQRT: إرجاع الجذر التربيعي الموجب.
بناء الجملة: SQRT(number)
Number (الرقم)**هو الرقم الذي تريد حساب الجذر التربيعي له.