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

تحديد تاريخ بداية الفترة ونهاية الفترة عند ادخال تاريخ معين


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

الاساتذة الكرام

يوجد تواريخ معينة تمثل تواريخ استحقاقات مبالغ معينة وهذه التواريخ ثابتة غير قابلة للتعديل كما فى العمود a

ويوجد تاريخ تعديل يتم ادخالة هذا التاريخ لابد ان يكون محصور بين تاريخين فى العمود الاول

المطلوب عند ادخال تاريخ التعديل يتم تغيير تاريخ بداية الفترة وتاريخ نهاية الفترة وفقاً لتاريخ التعديل وحسب موقعه فى العمود a

وإليكم المرفق وبه الشرح ومثال

التاريخ المحصوروتحديدبداية الفنرة ونهايتها.rar

رابط هذا التعليق
شارك

أخى الفاضل / عادل

تفضل ما تريد

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$18" Then
LR = [A1000].End(xlUp).Row
For i = 2 To LR
If Cells(i, 1) <> "" And Cells(i, 1) < Target Then Range("D18") = Format(Cells(i, 1), "yyyy/mm/dd")
Next
For ii = LR To 2 Step -1
If Cells(ii, 1) <> "" And Cells(ii, 1) > Target Then Range("E18") = Format(Cells(ii, 1), "yyyy/mm/dd")
Next
End If
End Sub

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

 

التاريخ المحصوروتحديدبداية الفنرة ونهايتها.rar

رابط هذا التعليق
شارك

اصتاذى القدير رجب جاويش

حل ممتع وكود ولا اروع ولكن اسمح لى ان اكون طامع فى التعلم من شخصكم الكريم

ان يكون الحل بالمعادلات حيث ان الملف الاصلى ملئ بالاكواد وتقبل منى كل الحب والاحترام

رابط هذا التعليق
شارك

الاساتذة الافاضل

تم حل مشكلة تحديد تاريخ بداية الفترة بالدالة vlookup

وتبقى مشكلة نهاية الفترة

كما بالمرفق

التاريخ المحصوروتحديدبداية الفنرة +ونهايتها.rar

تم تعديل بواسطه عادل ابوزيد
رابط هذا التعليق
شارك

الاستاذ الكبير جمال عبد السميع

اولاً احب ان اشكرك على مشاركتك واهتمامك وكم يسعدنى ويشرفى مشاركتك فى موضوعاتى

ثانياً : بعد اذنك احب ان استفسر منك عند ادخال التاريخ 2002/5/1 لم يعطى الناتج الصحيح لبداية ونهاية الفترة لماذا

ولك منى كل الحب والتقدير

وقد تلاحظ الفترة ان عند ادخال الفترة وتكون قبل نهاية الفترة بشهر يحدث ذلك

تم تعديل بواسطه عادل ابوزيد
رابط هذا التعليق
شارك

أخى الحبيب ( عادل ) أسف على الخطأ الذى حدث

تابع معى أخى الأتى لتحل المشكلة بإذن الله

ضع فى خلية ( تاريخ البداية ) هذه المعادلة

=MAX(IF(ISNUMBER($A$1:$A$59);IF($A$1:$A$59<$C$27;$A$1:$A$59)))

وفى خلية تاريخ النهاية سيتم حذف علامة التساوى من شرط المعادلة لتكون كالأتـــــــى :

=INDEX($A$2:$A$59;SMALL(IF(($C$27<$A$2:$A$59);ROW($A$2:$A$59)-MIN(ROW($A$2:$A$59))+1);ROW(1:1)))

وأيضا كماتعلم حضرتك المعادلتان معادلتا صفيف أي لابد من الضغط على ( CTRL+SHIFT+ENTER ) لكى تعملا المعادلتان بشكل صحيح

وياريت حضرتك تجربهم جيدا فى جميع الأحوال لأنى لم أجربهم إلا فى التاريخان الذى أرسلتهم إلى وكانت نتيجتهم تمام

تقبل تحياتى:

تم تعديل بواسطه جمال عبد السميع
رابط هذا التعليق
شارك

تم تعديل معادلة تاريخ البداية أما تاريخ جلب تاريخ النهاية فهى سليمة منذ البداية بعد إلغاء علامة التساوى من شرط المعادلة

واليك المرفق بعد التعديل

 

التاريخ المحصوروتحديدبداية الفنرة ونهايتها 2.rar

تم تعديل بواسطه جمال عبد السميع
رابط هذا التعليق
شارك

استاذى الفاضل الكبير جمال

جزاك الله كل الخير فانت من منابر هذا المنتدى التى نلجأ اليها والتى تهدينى إلى طريق العلم

وارجو ان تعذرنى من كثرة الطلبات والتعديلات فالتعديل المطلوب هو عندما يكون تاريخ التعديل هو احد التواريخ المذكورة فى المدى

1 - محتاج يكون فى الحل الاول بداية الفترة والتاريخ التالى فى المدى هو نهاية الفترة

2 - الحل الثانى ان يكون تاريخ التعديل هو نهاية الفترة والتاريخ السابق فى المدى هو بداية الفترة

3 - وللاستفادة من علمكم الكبير يرجى شرح فكرة المعادلة والمعادلة

واليكم المرفق

التاريخ المحصوروبه المثال.rar

تم تعديل بواسطه عادل ابوزيد
رابط هذا التعليق
شارك

تمام استاذى العزيز هو المطلوب الاول

جعله الله فى ميزان حسناتك وفى انتظار حل ثانياً ثم تفضلك بالمطلوب الثالث

وكل منى كل الحب والتقدير والدعاء لشخصكم الكريم والاسرة الكريمة بالصحة والستر والعافية

رابط هذا التعليق
شارك

لاأفهم أخى ( عادل )

ماهو المطلوب الثانى لقد تم عمل جميع ماتريدة ؟

أو ماذا تريد فى المطلوب الثانى خلاف ماتم عمله

رابط هذا التعليق
شارك

استاذى العزيز جمال

مبدئياً اسف على اننى اثقل عليك

ولتوضيح المطلوب الثانى : اذا تم تاريخ التعديل وكان احد التواريخ التى فى المدى يكون هذا التاريخ هو نهاية الفترة ( وليس البداية كما فى المطلوب الاول ) ويكون بداية الفترة هو التاريخ السابق لهذا التاريخ كما فى المثال الثانى بالملف السابق ارساله

كما احب ان اتعلم منكم فكره المعادلة وشرحها

تقبل منى تحياتى واحترامى وحبى وتقديرى لشخصكم الكريم

رابط هذا التعليق
شارك

أولا - أنت لاتثقل علية فى فى شئ ولكن هى عملية أستفسار منى لاأكثر حتى يتم المطلوب كما تريد

ثانيا - لديك من المعادلات داخل المرفق ماتستطيع تطويعة لماتريد

على سبيل المثال :

ولتوضيح المطلوب الثانى : اذا تم تاريخ التعديل وكان احد التواريخ التى فى المدى يكون هذا التاريخ هو نهاية الفترة ( وليس البداية كما فى المطلوب الاول ) ويكون بداية الفترة هو التاريخ السابق لهذا التاريخ كما فى المثال الثانى

أكتب هذه المعادلة للحصول على نهاية التاريخ المطلوب

=INDEX($A$1:$A$60;MATCH(C12;$A$1:$A$60))

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

=MAX(IF(ISNUMBER($A$1:$A$59);IF($A$1:$A$59<$C$12;$A$1:$A$59)))

ملحوظة

معادلة نهاية الفترة يكفى فيها ( enter ) أى ليست معادلة صفيف أما معادلة بداية الفترة فهى معادلة صفيف

رابط هذا التعليق
شارك

استاذى العزيز جمال

أولاً انى احبك فى الله

إلا اننى من طبعى انى اكون محرج جداً من نفسى عندما تكثر اسالتى واستفساراتى فارجو المعذره

وسامحنى عندما قمت بتعديل المعادلة فى المطلوب الثانى بالفعل اعطى تاريخ نهاية الفترة هو تاريخ التعديل الذى هو احد التواريخ فى المدى ولكن بتغيير التاريخ إلى اى تاريخ اخر تساوى تاريخ بداية الفترة مع نهاية الفترة وهو غير مطلوب

ممكن حضرتك تشرح لى الفكرة وساحاول معاك فى حلها وهذا شرف لى

تقبل تحياتى وتقديرى ولك منى كل الحب والتقدير

رابط هذا التعليق
شارك

أنظر أخى عادل إلى المرفق التالى وحاول التغيير فية أعتقد أنه مظبوط جدا

ثانيا - يحتوى على شرح للمعادلة وكما سترى من مكون المعادلة أنها تكون صفيفا من التواريخ يتم ترجمتها إلى صفيفا من الأرقام يتم ترجمتها إلى صفيفا من ( true ، false ) حيث أن الرقم ( 1 ) يقابلة الناتج ( true ) والرقم ( 0 ) يقابلة النتيجة ( false ) وهكذا

والتاريخ الموجود فى الشرح قد تم عملة على ناتج المعادلة فى تاريخ معين ولاحظ أنه لايتغير مع المعادلة لأنه تحول إلى قيم جديدة

التاريخ المحصور.rar

تم تعديل بواسطه جمال عبد السميع
رابط هذا التعليق
شارك

أخى الحبيب ( عادل ) بارك الله فيك وأدام الله بيننا الحب والمودة لأنهم أجمل مافى هذا المنتدى

وشكرا أخى على ذوقك

تقبل تحيات : أخيك

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information