lyla قام بنشر فبراير 5, 2006 قام بنشر فبراير 5, 2006 لوكان عندي مربع نص رقم 1 ومربع نص رقم 2 رقم 1 فيه بداية التاريخ ورقم 2 فيه نهاية التاريخ ش مربع نص رقم 3 فيه عدد الأيام أو مجموع الأيام . يبدو أن الأمر بسيط لكن في الحقيقة دوخني جدا وبشرح لكم سبب الصعوبة . لوكان عندي موظفة تريد إجازة تبدأ من تاريخ مثلا 1/2/2006 وتنتهي في 5/2/2006 فكم مجموع أيام إجازتها . العمليه الرياضية أو البرمجة بتكون زي كذه Text3=([text11]-[text2]) النتيجة هي = 4 أيام ولكن عمليا غير صحيحة لأن المنطق بيقول 5 أيام والسبب أن بداية يوم 1و2و3و4و5 هو إجازة لها ولما نجمعها حتكون 5 أيام وهذا هو الصح وليس نظريا ليكون 4 أيام . مثال آخر لو موظفة تريد يوم 1 فإن الجواب حسب ناقص فرق التاريخين هو صفر !!! ولكم جزيل الشكر فكرت في الكود أن أضيف 1 زي كذه Text3=([text11]-[text2]+1) طلع الناتج 5 أيام لكن واجهت مشاكل أخرى . أشارت على إحدى الزميلات ولما فكرت في كلامها وجدت أن هو الصح . السؤال الآن كيف لي أن أكتب كود بحيث يقوم البرنامج بحساب بداية التاريخ ثم يضيف يوم على اليوم الأول ثم يضيف 1 حتى يصل لنهاية التاريخ فيكون هو مجموع الأيام . هي قاعدة IF THEN END IF ( للوب) وجدت صعوبه كيف أكتب مربع النص 1 = مربع النص الثاني إذا أنتهى .
ظل السراب قام بنشر فبراير 5, 2006 قام بنشر فبراير 5, 2006 السلام عليكم ورحمة الله وبركاته لوكان عندي موظفة تريد إجازة تبدأ من تاريخ مثلا 1/2/2006 وتنتهي في 5/2/2006 فكم مجموع أيام إجازتها المتعارف عليه في الاجازات هو التالي تاريخ بدائة الاجازه = 1/8/1425 مدة الاجازه = 5 يكون تاريخ العوده = 6/8/1425 اي ان الاساس هنا هو مدة الاجازه + تاريخ الانفكاك تاريخ العوده قد يتم تسجيله تلقائي او يدوين والله اعلم والسلام عليكم ورحمة الله وبركاته
أبو هادي قام بنشر فبراير 5, 2006 قام بنشر فبراير 5, 2006 السلام عليكم طلع الناتج 5 أيام لكن واجهت مشاكل أخرى . أشارت على إحدى الزميلات ولما فكرت في كلامها وجدت أن هو الصح . بعد إذن أخي ابو طيف .. ما توصلت إليه أنت هو الصحيح وما أشارت عليك به زميلتك خاطئ . فالمدة بين تاريخين ( للإجازات ) يحملان نفس القيمة هي يوم واحد وليس صفرا ، والصفر سينتج منطقيا دون تسجيل أي سجلات أو تواريخ . فلماذا سنسجل تواريخ لإجازة لم تحدث ؟! تحياتي .
rudwan قام بنشر فبراير 6, 2006 قام بنشر فبراير 6, 2006 اضافة الى ماذكره الأساتذه / ابو هادي - ابو طيف يفضل استخدام معامل فرق التاريخ بدل من طرح التاريخين , و يستعمل كذلك Text3=datediff("d",[text11],[text2]) و هذا يحسب لك المدة الفعليه بدقة بدون اضافة واحد ,
lyla قام بنشر فبراير 8, 2006 الكاتب قام بنشر فبراير 8, 2006 أخ أبوهادي لو كان عندك إجازة مدة يوم واحد ولتكن من 10/2/2006 فمتى سيكون نهاية الإجازة !!! حتما أنه نهاية يوم 10/2/2006 وهذا منطقيا . ولو طبقته كبرمجة بيعطيني المشكلة الي أنا ذكرتها في الأول . عموما مشاركة الأخ رضوان حلت لي هذا الألتباس . وأما مشاركة الأخ أبوطيف فأقول صحيح هذا المعمول فيه بالإجازات وأخذته بعين الأعتبار . مشكورين جميعا والله يعطيكم العافيه
أبو هادي قام بنشر فبراير 8, 2006 قام بنشر فبراير 8, 2006 السلام عليكم أنا أيدت أضافة 1 على ناتج الطرح وهي نفس ما توصلت إليه أنت فما المشكلة في ذلك ؟! كما أن اقتراح أخي رضوان مع احترامي وتقديري الشديدين له هو مجرد رأي شخصي له ولكنه ليس مبنيا على حقيقة علمية ، فمن أين جاءت الأفضلية للدالة وعلى أي أساس ؟ فدالة DateDiff مجرد دالة تستخدم داخلها الطرح والجمع بين التواريخ وهي أبدا لا تضيف واحد عند طرح تاريخين بنفس القيمة وعليكم التجربة . تحياتي .
rudwan قام بنشر فبراير 9, 2006 قام بنشر فبراير 9, 2006 السلام عليكم فاسأل من كان بها خبيرا فعلا الصواب هو ماذكره الأستاذ ابو هادي باضافة الواحد الى المعادلة سواء تم استخدام معادلة الطرح العادي أو معادلة فرق تاريخين , و لكن لعل ما أشكل على الأخت ليلى في جواب أبو هادي أنه اقتبس من كلامها تصويب فعلها دون تضمين المعادلة بالاقتباس و هي لم تنتبه أن معادلتها باضافة الواحد هي المقصودة بالاقتباس Text3=([text11]-[text2]+1)
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.