بسملة جمال قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 السلام عليكم أريد كود لحساب السن بدلالة تاريخ الميلاد ويكون العمر : ....سنة و ..... شهر و ....... يوم
محمد احمد لطفى قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 تفضل today: Int((Date()-[تاريخ الميلاد])/365) & " سنة - " & Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12) & " شهر - " & Int((((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12-Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12))*30) & " يوم 2
Moosak قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 وهذه دالة أخرى : Function fAgeYMD(StartDate As Date, EndDate As Date) As String 'Purpose: Returns the difference between StartDate and EndDate in full years, months and days 'Coded by: raskew 'To call: ' ? fAgeYMD(#7/6/54#, #10/3/84#) 'Returns: ' 30 years 2 months 28 days Dim inthold As Integer Dim dayHold As Integer inthold = Int(DateDiff("m", StartDate, EndDate)) + _ (EndDate < DateSerial(year(EndDate), month(EndDate), Day(StartDate))) If Day(EndDate) < Day(StartDate) Then dayHold = DateDiff("d", StartDate, DateSerial(year(StartDate), month(StartDate) + 1, 0)) & Day(EndDate) Else dayHold = Day(EndDate) - Day(StartDate) End If fAgeYMD = Int(inthold / 12) & " year" & IIf(Int(inthold / 12) <> 1, "s ", " ") _ & inthold Mod 12 & " month" & IIf(inthold Mod 12 <> 1, "s ", " ") _ & LTrim(str(dayHold)) & " day" & IIf(dayHold <> 1, "s", "") End Function طريقة الاستدعاء : fAgeYMD(StartDate, EndDate) 2 1
Eng.Qassim قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 42 دقائق مضت, محمد احمد لطفى said: today: Int((Date()-[تاريخ الميلاد])/365) & " سنة - " & Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12) & " شهر - " & Int((((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12-Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12))*30) & " يوم هذه الدالة لاتحسب العمر بشكل مضبوط استاذ محمد جرب المرفق وادخل تاريخ الميلاد وسترى الفرق حساب العمر.rar 2
محمد احمد لطفى قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 (معدل) شكراً للتوضيح أستاذ @Eng.Qassim الاتنين غلط مزودين فى تاريخ ميلادى أيام زيادة today: Int((Date()-[تاريخ الميلاد])/365) & " سنة - " & Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12) & " شهر - " & Int((((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12-Int(((Date()-[تاريخ الميلاد])/365-Int((Date()-[تاريخ الميلاد])/365))*12))*30) & " يوم دى مزودة 17 يوم وملف حساب العمر مزود 8 يوم جارى تجربة كود أستاذى @Moosak تم تعديل يونيو 12, 2022 بواسطه محمد احمد لطفى 1
Eng.Qassim قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 17 دقائق مضت, محمد احمد لطفى said: لاتنين غلط تاكد جيدا ..الكود مضبوط 100% وقد جربته كثيرا هؤلاء الفرنجة لايخطأون ياطويل العمر😄 1 3
محمد احمد لطفى قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 الملف فيه حسبتين الى فوق غلط و الى تحت مظبوطة بالملى @Eng.Qassim 1
Eng.Qassim قام بنشر يونيو 12, 2022 قام بنشر يونيو 12, 2022 13 دقائق مضت, محمد احمد لطفى said: الملف فيه حسبتين الى فوق غلط و الى تحت مظبوطة بالملى هو انا بحكي ايه من الصبح انا وضعت كودك لفوق ...وكود الفرنجة لتحت حتى تقارن بينهم بالمناسبة استاذ محمد ..انا اعتمد عليه كثيرا في حساب مدد المشاريع (التي ليس فيها عطل او جمع ) 4 1
Moosak قام بنشر يونيو 13, 2022 قام بنشر يونيو 13, 2022 (معدل) 11 ساعات مضت, Moosak said: وهذه دالة أخرى : Function fAgeYMD(StartDate As Date, EndDate As Date) As String 'Purpose: Returns the difference between StartDate and EndDate in full years, months and days 'Coded by: raskew 'To call: ' ? fAgeYMD(#7/6/54#, #10/3/84#) 'Returns: ' 30 years 2 months 28 days Dim inthold As Integer Dim dayHold As Integer inthold = Int(DateDiff("m", StartDate, EndDate)) + _ (EndDate < DateSerial(year(EndDate), month(EndDate), Day(StartDate))) If Day(EndDate) < Day(StartDate) Then dayHold = DateDiff("d", StartDate, DateSerial(year(StartDate), month(StartDate) + 1, 0)) & Day(EndDate) Else dayHold = Day(EndDate) - Day(StartDate) End If fAgeYMD = Int(inthold / 12) & " year" & IIf(Int(inthold / 12) <> 1, "s ", " ") _ & inthold Mod 12 & " month" & IIf(inthold Mod 12 <> 1, "s ", " ") _ & LTrim(str(dayHold)) & " day" & IIf(dayHold <> 1, "s", "") End Function طريقة الاستدعاء : fAgeYMD(StartDate, EndDate) وهنا الدالة الأخيرة ( علشان ما أغار ) 😂 حساب العمر.rar تم تعديل يونيو 13, 2022 بواسطه Moosak 5
متقاعد قام بنشر يونيو 13, 2022 قام بنشر يونيو 13, 2022 مشاركة معكم دالة لحساب السنوات ويمكن تعديلها لتحقيق المطلوب Function Age(varBirthDate As Variant) As Integer Dim varAge As Variant If IsNull(varBirthDate) Then Age = 0: Exit Function varAge = DateDiff("yyyy", varBirthDate, Now) If Date < DateSerial(Year(Now), Month(varBirthDate), _ Day(varBirthDate)) Then varAge = varAge - 1 End If Age = CInt(varAge) End Function هذه الدالة ☝️ من موقع مايكروسوفت الموقع غني بالامثلة ولكن امثلة عامة يمكن التعديل عليها وتكييفها وفقا لحاجتنا تحياتي 2
ابوبسمله قام بنشر يونيو 13, 2022 قام بنشر يونيو 13, 2022 21 ساعات مضت, Eng.Qassim said: هؤلاء الفرنجة لايخطأون ياطويل العمر😄 ههههههههههههههههه اضحك الله سنك مهندسنا العزيز بارك الله فيكم اخوانى واساتذتى وجزاكم الله خيرا 3
بسملة جمال قام بنشر يونيو 13, 2022 الكاتب قام بنشر يونيو 13, 2022 شكرا لكل من شارك بالاجابة ولكن اذا كان تاريخ الميلاد 14/6/2000 وتاريخ اليوم 13/6/2022 طبقا للمثال السابق (حساب العمر ) يكون العمر: 22 سنة + 0 شهر + 3 يوم والمفروض يكون 22 سنة + 0 شهر + 0 يوم هل كلامي صحيح ؟
Eng.Qassim قام بنشر يونيو 13, 2022 قام بنشر يونيو 13, 2022 34 دقائق مضت, بسملة جمال said: طبقا للمثال السابق (حساب العمر ) يكون العمر: 22 سنة + 0 شهر + 3 يوم يا ستي الكريمة ..الظاهر انك لم تقرأي التعليقات السابقة الخانة الاولى في النموذج فعلا تظهر الناتج = 22سنة +0شهر+3 يوم لان الكود يحسب الشهر 30 فقط اما الخانة الثانية فتظهر العمر بشكل مضبوط ...اذا جربتي الكود يوم غد سيظهر لك العمر = 22سنة +0 شهر +0 يوم اما الخانة الثالثة والتي تعود لاستاذ موسى فلم اجربها بصراحة 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.