عمر ضاحى قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 (معدل) السلام عليكم عيد مبارك عليكم عارف انه النهرده عيد ^_^ كل سنه وانتم طيبين لكن انا الكود ده شاغل دماغي عاوز اعرف فين مشكلته 😅 فى الكودين بالاسفل يفترض انهم يعطونى عدد ايام الجمعه بين تاريخين وايضا السبت لكن بيعطينى صفر 'حساب عدد ايام الجمعة ضمن الاجازة الرسمية بين التاريخين Fri_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ "and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ "and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days هل يمكنكم معرفة اين الخطأ ؟ تم تعديل يوليو 20, 2021 بواسطه عمر ضاحى
د.كاف يار قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 تفضل هذه الطريقة من خلال حلقة تكرارية داخل نطاق تاريخين محددين Dim VarDate As Date Dim enddate As Date Dim SFriday, SSaturday As Integer -===================================== VarDate = #1/1/2022# enddate = #1/31/2022# -===================================== Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If If Weekday(VarDate, 2) = vbSaturday Then SSaturday = SSaturday + 1 End If Loop Dim msg As String msg = "عدد ايام (الجمعة) حسب التواريخ المدخلة" msg = (msg) & " : " & SFriday msg = (msg) & (vbNewLine) & "عدد ايام (السبت) حسب التواريخ المدخلة" msg = (msg) & " : " & SSaturday MsgBox msg, vbInformation + vbMsgBoxRight, "احتساب الأيام المحددة" 1
jjafferr قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 وعليكم السلام 🙂 على افتراض ان اسماء الحقول صحيحة في الكود ، يوجد خطأ واحد في كل معادلة : يجب إضافة مسافة بين الاشارة " وكلمة and ، في المعادلتين : . هكذا : 'حساب عدد ايام الجمعة ضمن الاجازة الرسمية بين التاريخين Fri_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days واذا ما حصلت على نتيجة ، فيمكن يجب ان نرى ما يراه البرنامج في صيغة التاريخ ، وعليه قد نحتاج الى استعمال الدالة fDateFormat : جعفر 1
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 (معدل) منذ ساعه, د.كاف يار said: تفضل هذه الطريقة من خلال حلقة تكرارية داخل نطاق تاريخين محددين Dim VarDate As Date Dim enddate As Date Dim SFriday, SSaturday As Integer -===================================== VarDate = #1/1/2022# enddate = #1/31/2022# -===================================== Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If If Weekday(VarDate, 2) = vbSaturday Then SSaturday = SSaturday + 1 End If Loop Dim msg As String msg = "عدد ايام (الجمعة) حسب التواريخ المدخلة" msg = (msg) & " : " & SFriday msg = (msg) & (vbNewLine) & "عدد ايام (السبت) حسب التواريخ المدخلة" msg = (msg) & " : " & SSaturday MsgBox msg, vbInformation + vbMsgBoxRight, "احتساب الأيام المحددة" انا مش عارف اعيد صياغة الكود بالشكل ده لان الكود ال انا حاطه ما هو الا جذء من كود اكواد اخره معاه وانا كنت عاوز اعرف فين الغلط فى الكود ال معايا منذ ساعه, jjafferr said: وعليكم السلام 🙂 على افتراض ان اسماء الحقول صحيحة في الكود ، يوجد خطأ واحد في كل معادلة : يجب إضافة مسافة بين الاشارة " وكلمة and ، في المعادلتين : . هكذا : 'حساب عدد ايام الجمعة ضمن الاجازة الرسمية بين التاريخين Fri_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("*", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "Fri_Dats:--->" & Fri_Days واذا ما حصلت على نتيجة ، فيمكن يجب ان نرى ما يراه البرنامج في صيغة التاريخ ، وعليه قد نحتاج الى استعمال الدالة fDateFormat : جعفر استاذى الكبير جعفر هذا شرف لى ان تدخل لتساعدنى فى مشكلتى جربت اضع مسافه برضه لم تعمل ويعطينى النتيجه صفر لهذا قررت ان اضع النموذج والجدول هنا لغرضين اولا اصلاح المشكله ثانيا ان يكون شئ يستفاد به غيري وعند الانتهاء من المشروع سوف اقوم بنشره هنا ان شاء الله Project2.accdb تم تعديل يوليو 20, 2021 بواسطه عمر ضاحى اعادة رفع الملف المرفق
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 منذ ساعه, Hawiii said: جمع أيام الحمعة والسبت بين تاريخين انا اريد ان اجعل ليوم الجمعه داله منفرده وليوم السبت داله منفرده لغرض اولا فى حاله كان ايام العطله الرسميه هي يوم الجمعه والسبت (كالبنوك) يبقى الداله كما هي اما فى حال ان العطله الرسميه هي يوم الجمعه فقط استطيع ان اوقف داله يوم السبت فقط من غير ما اخل بالكود العام هناك الملف المرفق فى الرد السابق لى يمكنك ان تنزله وتنظر فى الاكواد بنفسك لعلك تجد سبب عدم عمل الداله التى فى الكود لان قد يكون هناك خطأ فى الكود زي فصله ناقصه او مسافه او حرف خطأ لا ادري اين الخطأ ممكن يكون الكود قديم لا يعمل بنفس الاليه مش عارف
Hawiii قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 (معدل) 28 دقائق مضت, عمر ضاحى said: أنا اريد ان اجعل ليوم الجمعه داله منفرده أخي الدالة تعمل لأي يوم في الأسبوع ، لا عليك من عنوان الموضوع. أستطيع أن أنزل مثالك وأضع لك الدالة كما تريد ، ولكن هذا السلوك لا يجعلك تزيد من تحصيلك العلمي ، اقرأ الدالة الأولى جيدا وافهمها ثم طبقها واختبرها ، هي أسهل من السهل نفسه. تحتاج منك تاريخ البداية وتاريخ النهاية ورقم يوم الأسبوع. حاول مرة أخرى وإن عجزت سوف أتدخل ، أرجو لك التوفيق. تم تعديل يوليو 20, 2021 بواسطه Hawiii حصول تكرار لم أعرف سببه
محمد أبوعبدالله قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 السلام عليكم جرب الكود التالي Fri_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days Project2.accdb تحياتي 1
Hawiii قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 لصق الدالة من الموضوع الأصلي: Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function
د.كاف يار قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 طيب اتفضل هذا الكود Dim VarDate As Date Dim enddate As Date Dim SFriday As Integer '=========== ضع حقول التاريخ هنا ========== VarDate = [حقل التاريخ الأول] enddate = [حقل التاريخ الثاني] '===================================== Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If Loop 'حقل النتيجة [TextBox1] = SFriday
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 منذ ساعه, محمد أبوعبدالله said: السلام عليكم جرب الكود التالي Fri_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days 'حساب عدد ايام السبت ضمن الاجازة الرسمية بين التاريخين sat_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'Sat'" & _ " and [HoliDays] between#" & Format(begdate, "yyyy/mm/dd") & "#and #" & Format(enddate, "yyyy/mm/dd") & "#") Debug.Print "Fri_Dats:--->" & Fri_Days Project2.accdb 596 kB · 1 download تحياتي للاسف لم يعمل معي ايضا هل هو يعمل جيدا معك ؟ انا معايا اصدار 2019 هل لهذا تأثير محتمل ؟ وايضا اعتقد ان من الممكن ان يكون الخطأ فى هذا السطر "WeekdayName(weekday([HoliDays]),true)= 'Fri'" & _
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 (معدل) 1 ساعه مضت, Hawiii said: أخي الدالة تعمل لأي يوم في الأسبوع ، لا عليك من عنوان الموضوع. أستطيع أن أنزل مثالك وأضع لك الدالة كما تريد ، ولكن هذا السلوك لا يجعلك تزيد من تحصيلك العلمي ، اقرأ الدالة الأولى جيدا وافهمها ثم طبقها واختبرها ، هي أسهل من السهل نفسه. تحتاج منك تاريخ البداية وتاريخ النهاية ورقم يوم الأسبوع. حاول مرة أخرى وإن عجزت سوف أتدخل ، أرجو لك التوفيق. انا اريد ان افهم هذا وفعليا اريد ان اتعلمها لكن لما اجرب بالاقى بيدينى خطأ والدنيا بتقف لان الداله محتاجه شرح توضيحي اكثر قليلا منذ ساعه, Hawiii said: لصق الدالة من الموضوع الأصلي: Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function اعتذر لكن انا مش فاهم نقطه هنا انا استبدل Date1 ب begdate عندي ؟ منذ ساعه, د.كاف يار said: طيب اتفضل هذا الكود Dim VarDate As Date Dim enddate As Date Dim SFriday As Integer '=========== ضع حقول التاريخ هنا ========== VarDate = [حقل التاريخ الأول] enddate = [حقل التاريخ الثاني] '===================================== Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If Loop 'حقل النتيجة [TextBox1] = SFriday انا لا اريد ان تظهر النتيجه فى الفورم بل يحتفظ بها الاكسيس فى الذاكره للرجوع اليها ويحدث سبب وجودها وهو الداله التاليه التى سيكون بها العمليه الحسابيه تم تعديل يوليو 20, 2021 بواسطه عمر ضاحى
Hawiii قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 سبحان الله ، هذا المنتدى يحتاج إلى محكمين من خارجه حتى لا يضيع الطلبة والمبتدئون. هذا مثال للدالة التي نصحت بها ودالة الدكتور ، أرجو لصقه ثم تشغيل الإجاراءين لمعرفة الفرق بين النتائج ووقت التنفيذ. كود في قمة الإتقان لم أرى شبيها له قبله ولن يأتي بعده ، واللي يحب يعترض يقابلني سنة 2500 ميلادي. Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function Function WkDayCount(VarDate As Date, enddate As Date) As Long 'دالة د. كاف يار Dim SFriday As Long Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If Loop WkDayCount = SFriday End Function Sub Test1() Dim Date1 As Date Dim Date2 As Date Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(2021, 7, 30) Debug.Print CountWkDay(Date1, Date2, vbFriday) Debug.Print WkDayCount(Date1, Date2) End Sub Sub Test2() Dim Date1 As Date Dim Date2 As Date Dim Start As Single Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(9000, 7, 25) Start = Timer Debug.Print CountWkDay(Date1, Date2, vbFriday), Timer - Start Start = Timer Debug.Print WkDayCount(Date1, Date2), Timer - Start End Sub 1 2
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 (معدل) 4 دقائق مضت, Hawiii said: سبحان الله ، هذا المنتدى يحتاج إلى محكمين من خارجه حتى لا يضيع الطلبة والمبتدئون. هذا مثال للدالة التي نصحت بها ودالة الدكتور ، أرجو لصقه ثم تشغيل الإجاراءين لمعرفة الفرق بين النتائج ووقت التنفيذ. كود في قمة الإتقان لم أرى شبيها له قبله ولن يأتي بعده ، واللي يحب يعترض يقابلني سنة 2500 ميلادي. Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function Function WkDayCount(VarDate As Date, enddate As Date) As Long 'دالة د. كاف يار Dim SFriday As Long Do While VarDate < enddate VarDate = DateAdd("D", 1, VarDate) If Weekday(VarDate, 2) = vbFriday Then SFriday = SFriday + 1 End If Loop WkDayCount = SFriday End Function Sub Test1() Dim Date1 As Date Dim Date2 As Date Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(2021, 7, 30) Debug.Print CountWkDay(Date1, Date2, vbFriday) Debug.Print WkDayCount(Date1, Date2) End Sub Sub Test2() Dim Date1 As Date Dim Date2 As Date Dim Start As Single Date1 = DateSerial(2021, 7, 23) Date2 = DateSerial(9000, 7, 25) Start = Timer Debug.Print CountWkDay(Date1, Date2, vbFriday), Timer - Start Start = Timer Debug.Print WkDayCount(Date1, Date2), Timer - Start End Sub لا يمكننى ان اجرء على الاعتراض سوف احاول مره اخرى ان اطبق هذا بعتذر اذا كنت اثقلت عليكم وكل عام وحضراتكم بخير تم تعديل يوليو 20, 2021 بواسطه عمر ضاحى
Eng.Qassim قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 هذا مثال لسؤالك بأستخدام استعلام .. يعطيك كم عدد ايام الجمعة وكم عدد ايام السبت .. والايام المتبقية بعد طرح الفرق بين التاريخين واستخراج ايام الجمعة والسبت ... وتستطيع انت التحكم فيهما كما شأت date diff.accdb 1
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 1 ساعه مضت, Hawiii said: لصق الدالة من الموضوع الأصلي: Function CountWkDay(ByVal Date1 As Long, _ ByVal Date2 As Long, _ WkDay As Byte) As Variant If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If Date1 = Fix((Date1 + (7 - WkDay)) / 7) Date2 = Fix((Date2 + (7 - WkDay)) / 7) CountWkDay = Abs(Date2 - Date1) End Function If begdate <= enddate Then begdate = begdate - 1 Else enddate = enddate - 1 End If Date1 = Fix((begdate + (7 - WkDay)) / 7) Date2 = Fix((enddate + (7 - WkDay)) / 7) CountWkDay = Abs(enddate - begdate) هذا بعد التعديل للعمل عندي والنتيجة اخرجلى عدد 18 وانا اريد عدد يوم الجمعه خلال الفتره يعنى مثلا اليوم تاريخ 20/07/2021 ولو قولت ليوم 27/07/2021 هنا هيكون النتيجه هي ( 1 يوم جمعه و 1 يوم سبت خلال هذه الفتره ) وهذا ما اريده
Eng.Qassim قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 8 minutes ago, عمر ضاحى said: If begdate <= enddate Then begdate = begdate - 1 Else enddate = enddate - 1 End If Date1 = Fix((begdate + (7 - WkDay)) / 7) Date2 = Fix((enddate + (7 - WkDay)) / 7) CountWkDay = Abs(enddate - begdate) هذا بعد التعديل للعمل عندي والنتيجة اخرجلى عدد 18 وانا اريد عدد يوم الجمعه خلال الفتره يعنى مثلا اليوم تاريخ 20/07/2021 ولو قولت ليوم 27/07/2021 هنا هيكون النتيجه هي ( 1 يوم جمعه و 1 يوم سبت خلال هذه الفتره ) وهذا ما اريده انظر للنموذج الذي ارفقته .. وهذه النتيجة 1
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 2 دقائق مضت, Eng.Qassim said: انظر للنموذج الذي ارفقته .. وهذه النتيجة انا حملت النموذج وهو شغال تمام انا لى طلبين من حضرتك 1- لو حابب اكتب هذا الكود ب VBA علشان احاول اطبقه عندي افعلها ازاى 2-استأذن حضرتك ان تنظر الى الملف المرفق وتنظر الى الاكواد وتشوف الاليه التى يعمل بها الكود واستسمحك ان يكون صبرك معي طويل حبه حبتين كده 😁 وانظر الى نتيجة الكود الخاص ب holidaysdate = هتلاقيه شغال تمام لكن فى الكود التالى والذى لا يعمل
Eng.Qassim قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 استاذي العزيز عمر .. اعتقد بان سؤالك كما في الصورة اذا اخترنا فقط يوم الجمعة فتظهر النتيجة ... واذا اخترنا الجمعة والسبت فتظهر النتيجة واذا اخترنا عدم وجود الجمعة والسبت فتظهر النتيجة
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 14 دقائق مضت, Eng.Qassim said: استاذي العزيز عمر .. اعتقد بان سؤالك كما في الصورة اذا اخترنا فقط يوم الجمعة فتظهر النتيجة ... واذا اخترنا الجمعة والسبت فتظهر النتيجة واذا اخترنا عدم وجود الجمعة والسبت فتظهر النتيجة لا اكذب عليك لم تكن هكذا رؤيتى للبرنامج كنت اريد ان اجعل هذا الاختيارات بعيد عن المستخدم لان هذا سيكون سيستم لا يمكن ان يكون بشكل مع موظف وبطريقه اخرى مع موظف بل كنت اريد ان اجعل النظام من الكود نفسه اى اذا اردت ان اجعل النظام يحسب يوم الجمعه فقط او الجمعه والسبت او بدون كله فى هذا السطر Netholidyas = holidaysdat - Fri_Days - sat_Days حيث ان لكل عنصر من الثلاثه داله خاصه به holidaysdat بيستمد معلوماته من جدوله Fri_Days يستمد معلوماته من عدد ايام الجمعه بين التاريخين sat_Days يستمد معلوماته من عدد ايام السبت بين التاريخين فكيف اعيد الصياغه من جديد مع الشرح علشان افهم ليه انا هختار الداله دي واترك الداله دي هذا اذا كان لن يتعبكم فانا اشعر بالاحراج انى اتعبت كل العمالقه امثالكم
kanory قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 (معدل) فكرة ::::: يمكن تنفيذ فكرة @Eng.Qassim بحيث تجعل اعدادات لبرنامجك في نموذج لايمكن الدخول اليه الا من مدير النظام فقط وتعطيها صلاحية خاصة تم تعديل يوليو 20, 2021 بواسطه kanory 1
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 انا بالفعل فكرت فيها (ف هي فكره عبقريه من المهندس قاسم ) بارك الله فيه لكن مش متأكد على كيفيت التنفيذ هل اعمل جدول خاص بهذا الاختيار ومنه يستمد الكود المعلومه ولا فى حاجه اسهل
عمر ضاحى قام بنشر يوليو 20, 2021 الكاتب قام بنشر يوليو 20, 2021 (معدل) يا جماعة الخير مش عارف اقول ايه بس عرفة فين الغلط حاجه لم اكن اتوقعها ابدا الا وهي التسميه ( السبت الجمعه ) فى الكود كانت مكتوبه بالانجليزي ولما كتبتها عربي اشتغلت مش عارف اقول ايه بس دى نقطه الى حد ما تقلق شوي لان معني هذا ان الكود يعمل او لا يعمل طبقا للغة جهاز المستخدم فهل يمكن ان نعمل شئ حيال هذا الامر sat_Days = DCount("[HoliDays]", "tblHoliDays", _ "WeekdayName(weekday([HoliDays]),true)= 'السبت'" & _ " and [HoliDays] between #" & begdate & "# and #" & enddate & "#") Debug.Print "sat_Days:--->" & sat_Days تم تعديل يوليو 20, 2021 بواسطه عمر ضاحى
Hawiii قام بنشر يوليو 20, 2021 قام بنشر يوليو 20, 2021 (معدل) 3 ساعات مضت, Eng.Qassim said: هذا مثال لسؤالك مع أني لي دارية بدوال التاريخ للنظام ولكنها لم تخطر على بالي ، استخدامك للدالة DateDiff مكافئ للدالة التي نصحت بها ولكن أدخلت عليها نفس التعديل للدالة الأولى لتصبح كالتلي: Function WeekDiff(ByVal Date1 As Date, _ ByVal Date2 As Date, _ WkDay As VbDayOfWeek) As Long If Date1 <= Date2 Then Date1 = Date1 - 1 Else Date2 = Date2 - 1 End If WeekDiff = Abs(DateDiff("ww", Date1, Date2, WkDay)) End Function تم تعديل يوليو 21, 2021 بواسطه Hawiii إضافة دالة Abs 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.