اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

أبو هادي

المشرفين السابقين
  • Posts

    1092
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو أبو هادي

  1. السلام عليكم أنشئ وحدة نمطية / موديول والصق به هذا الكود : Option Explicit '-- هذا الإجراء من كتابة الأستاذ أبو هاجر Sub CalcAge(ByVal DateFm As Variant, ByVal DateTo As Variant, _ ByRef vDays As Integer, ByRef vMonths As Integer, ByRef vYears As Integer) 'Dim vMonths, vDays, vYears If Not IsDate(DateFm) Or Not IsDate(DateTo) Then Exit Sub DateFm = DateFm - 1 '-- تم إضافة هذا السطر بواسطة أبو هادي --' '------------------ vMonths = DateDiff("m", CDate(DateFm), CDate(DateTo)) vDays = DateDiff("d", DateAdd("m", vMonths, CDate(DateFm)), CDate(DateTo)) If vDays < 0 Then vMonths = vMonths - 1 vDays = DateDiff("d", DateAdd("m", vMonths, CDate(DateFm)), CDate(DateTo)) End If vYears = vMonths \ 12 vMonths = vMonths Mod 12 End Sub Function GetAge(Days As Long) As String Const CalBegin = #1/1/2001# Dim yy As Integer Dim mm As Integer Dim dd As Integer Call CalcAge(CalBegin, (CalBegin - 1) + Days, dd, mm, yy) GetAge = yy & " " & mm & " " & dd End Function ثم من أي موقع تريد استدعاء الدالة أعلاه يمكنك ذلك بالطريقة التالية : Sub Test() MsgBox GetAge(9625) End Sub إذا لم تستطع الإستفادة مما سبق فعليك بأن تضع مثالك في الرابط التالي وسوف أقوم بالتعديل عليه : قسم مؤقت لتحميل الملفات إلى الموقع للأعضاء تحياتي .
  2. السلام عليكم لا عليك أخي Top ، كنا سنلومك دون تشهير لو أنك لم تظهر ثانية ، أما الآن فلك منا الشكر على تجاوبك . لقد حولت الملف وانتهيت من المدن والولايات وبقى جدول المدن . وقد لاحظت أن البيانات ليست منقحة حيث وجد أن هناك مثلا بعض الولايات لها أكثر من فارق توقيت ، وحسب اعتقادي هذا غير صحيح . أما عن نسخة بالسورس كود فالنسخة المعروضة مفتوحة وتستطيع الإستفادة من الأكواد التي بها . تحياتي .
  3. السلام عليكم انتهيت الآن من تحويل كل البيانات المُهداة من الأخ Top ، آمل أن لا أكون قد ارتكبت أخطاءً . تحياتي . الملفات المرفقة Prayers_20050110.rar ( 364.86ك ) عدد مرات التنزيل: 11
  4. السلام عليكم روعة أخي أبو سليمان .. أنت خبيرنا المجهول القادم بقوة . أنا أرى أن هذا النموذج الصغير بحجمه كبير في إمكانياته وهو من أقوى الأمثلة في منتدياتنا على التحكم بالعرض والترتيب والبحث . عزيزي أبو سليمان .. أرى أن هذا البحث به الكفاية إلا إذا رغبت في إضافة نوعا آخر للبحث . لن نبرح هذه النقطة حتى تنهيها بنفسك . تحياتي .
  5. السلام عليكم أخي أبو سليمان .. أقصد أن أزرار البحث عند الضغط عليها تأخذ في الاعتبار ثلاثة الحقول البلد والولاية والمدينة دفعة واحدة وبالطبيعي إذا كان أحدهم فارغ فهو يتخطاه . تحياتي .
  6. السلام عليكم هل الشهر والسنة على شكل تاريخ أو على شكل أرقام منفصلة السنة لوحدها والشهر لوحده أم على شكل تنسيق نصي ؟ بعد ردكم سوف أقوم بتحويل الكود إلى دالة ، حيث يمكن استدعاؤها مثل أي دالة أصلية Built-in Function واستخدامها في النماذج والتقارير والإستعلامات . تحياتي .
  7. السلام عليكم ويمكن اختصاره كالتالي : Sub GetMonthDays() Dim myDate As Date Dim MonthDays As Byte myDate = #2/25/2001# MonthDays = Day(DateSerial(Year(myDate), Month(myDate) + 1, 1) - 1) MsgBox MonthDays End Sub تحياتي .
  8. السلام عليكم تم التعديل واعتماد جزء من تعديلات أبي سليمان واعتماد فكرة التعديل لجزء آخر مع إعادة صياغتة مني . يبيقى ما هو معلق سابقا بما يخص بعض نتائج دالة UmDateDiff والتي سوف أقوم بالعمل على إنهائها في أقرب وقت ممكن إن شاء الله تعالى . دالة Um_Date شذت بالإسم حيث أن أكثر الدوال تحتوي على متغير بإسم UmDate واحترازا قمت بالتفرقة بينهما . قد أقوم مستقبلا بتبديل كل المتغيرات/الوسائط المسماة بـ UmDate إلى إسم آخر .. مطلوب التعليق . تحياتي . الملفات المرفقة UmAlQura_20050107.rar ( 188.73ك ) عدد مرات التنزيل: 3
  9. السلام عليكم أعتقد الفرز/الفلترة سيعقد الأمور ، وطبعا أعتقد أننا نستطيع للتسهيل الهروب من إعادة كتابة المصادر باستخدام خاصية Filter . وسنترك هذا الخيار قائما بعد تجربة الاقتراح الأول إن قبلت . فهمك لاقتراحي السابق صحيح وركز على مقصد "و/أو" . مشكلة الهمزات وال التعريف يمكن تفاديها لاحقا حتى ولو بعمل دالة خاصة بها ولو أن ال التعريف عادة ما تكون عائق في الترتيب وليس البحث . أشكرك مرة أخرى على تفاعلك غير المحدود وجهدك الكبير . تحياتي .
  10. السلام عليكم Sub GetMonthDays() Dim myDate As Date Dim MonthDays As Byte myDate = #2/25/2001# MonthDays = DateSerial(Year(myDate), Month(myDate) + 1, 1) _ - DateSerial(Year(myDate), Month(myDate), 1) MsgBox MonthDays End Sub تحياتي .
  11. السلام عليكم بعد إذن أخي أمجد وحيث أن البحث حاليا لا يعمل بشكل جيد فقد كتبت لك هذا الكود آمل أن يكون مفيدا : Sub GetPeriod() Const YearAvg = 365.25 Dim Days As Long '---------------- Dim yy As Integer Dim mm As Integer Dim dd As Integer Days = 9625 yy = Fix(Days / 365) If Fix(yy * YearAvg) > Days Then yy = yy - 1 End If '------------------------------- Days = Days - Fix(yy * YearAvg) '------------------------------- mm = Fix(Days / 29.5) If IIf(mm > 2, CLng((mm - 2) * 30.6) + 59, CLng(mm * 30.6) + Int(mm > 1) * 2) > Days Then mm = mm - 1 End If '------------------------------- dd = Days - IIf(mm > 2, CLng((mm - 2) * 30.6) + 59, CLng(mm * 30.6) + Int(mm > 1) * 2) MsgBox yy & " " & mm & " " & dd End Sub تحياتي .
  12. السلام عليكم ما شاء الله عليك أخي أبو سليمان ... خطير . توقعت أنك "ستحتاس" معها أو بأقل تقدير ستأخذ منك وقتا لعملها ، ولكنك خالفت كل توقعاتي . ملاحظة بسيطة لو يتم أضافة ما يوضح اتجاه الترتيب أو نتركها كما هي بحيث شكل الأسماء يدل عليه ، مطلوب التعليق . النقطة القادمة هي عملية البحث : وأفكر في نوعين من البحث وسنعمل على أحدهما الآن وهو : أن يكون البحث بكتابة أي جزء من إسم البلد و/أو أي جزء من إسم الولاية و/أو أي جزء من إسم المدينة . بمعنى يمكن أن نكتب في خانة بحث البلد فقط أو في البلد والولاية أو في البلد والولاية والمدينة في وقت واحد ثم نضغط على زر البحث FindFirst . وفي هذه الحالة نحتاج إلى زرين أحدهما للبحث خطوة أخرى للأمام والآخر لخطوة للخلف FindNext و FindPrevious . إذا لك ملاحظات على فكرة البحث آمل أن لا تتردد في طرح فكرتك . مطلوب : من يقوم بالعمل على إعادة تصميم النموذج غير الأخ أبو سليمان . تحياتي .
  13. السلام عليكم شكرا لك أخي أبو نعيم على تحياتك الطيبة .. وبعد : لا يمكن التعديل على حقل الترقيم التلقائي إلا بالطريقة المعتادة وهو عمل حقل رقمي واستخدام دالة DMax أو أي طريقة أخرى للحصول على أكبر رقم سابق . أو ما عملته أنا وهو الإبقاء على الترقيم التلقائي وعمل حقل رديف يظهر تسلسل المعرف على مستوى السنة ، ولكن تبقى مشكلتان صغيرتان وهما : 1 - لو تم حذف أول سجل/معرف في السنة فسيجر معه كل السجلات للسنة نفسها والتي تليه في تبديل قيمها للخلف ، مع ملاحظة أنه لن يؤثر على السنوات السابقة واللاحقة . 2 - التعرف على معرف السجل الحقيقي بسرعة ولكن يمكن عمل نموذج محول للبحث بين الحقل الرئيس والرديف . يبقى حل آخر لو أن بيل جيتس يكثر دخول على منتدانا هذه الأيام ويقرأ هذا الموضوع عله يقدر حاجة الناس له ، لكن أعتقد أنه مشغول في ميزانية 2004 :d . تحياتي .
  14. السلام عليكم هذا موضوع قد يفيدك في حالة لم تنجح الحلول السابقة : http://www.officena.net/ib/index.php?showt...1803&hl=recover تحياتي .
  15. السلام عليكم مثال مرفق يوضح كيفية استخدام استعلام فرعي على نمط النموذج الفرعي والتقرير الفرعي . تحياتي . LastRecord.rar
  16. السلام عليكم لا يمكن أن تجمع بين الطلبين . إذا أردت أن تعمل switching تبادل/تحويل بين h و t فلا بد من هذه الطريقة . أما إذا أردت أحدهما رئيس والآخر تابع فيمكن عمل كود في زر الحفظ . تحياتي .
  17. السلام عليكم ويمكن اختصاره كالتالي : Private Sub تفصيل_Format(Cancel As Integer, FormatCount As Integer) Me.المهنه.Visible = Me.الاسم.Tag <> Me.الاسم Me.الاسم.Tag = Me.الاسم End Sub تحياتي .
  18. السلام عليكم فكرة حل قد تنفع ، وقد تكون هناك طريقة احترافية أفضل ، هذا ما لدي الآن : في تقرير استعلام2 بدل قيمة خاصية إخفاء التكرار إلى لا ثم أضف هذا الكود إلى التقرير : Private Sub تفصيل_Format(Cancel As Integer, FormatCount As Integer) If Me.الاسم.Tag = Me.الاسمThen Me.المهنه.Visible = False Else Me.المهنه.Visible = True End If Me.الاسم.Tag = Me.الاسم End Sub تحياتي .
  19. السلام عليكم يمكن الإستغناء عن دالة Abs إلا إذا كتبت كالتالي فإنها مطلوبة : Private Sub h_AfterUpdate() Me.t = Abs(Me.h - 1) End Sub مع ملاحظة يجب تأمين القيمة للـ h والـ t أن لا يقبلا غير الصفر أوالواحد . تحياتي .
  20. السلام عليكم وأنا أختار عملك أخي أبو سليمان ، ليس تفضيلا ولكن لأن الأخ رضوان سيغيب مدة الشهر تقريبا والمطلوب الآتي له علاقة بعبارات الـ SQL التي كتبت كمصادر للمدن والولايات والبلدان . والمطلوب هو : عمليات الترتيب تصاعديا وتنازليا . أستطيع أن أشرح لك كيفية الوصول السريع لمعرفة نسق الترتيب لكل مصدر ثم التعديل عليه ، ولكن أفضل أن أتركها لك . وإذا واجهتك المشاكل فارمها تجاهي فأنا قريب منك . تحياتي .
  21. السلام عليكم في حدث بعد التحديث لكل من h و t ضع هذين الحدثين : Private Sub h_AfterUpdate() Me.t = Abs(1 - Me.h) End Sub Private Sub t_AfterUpdate() Me.h = Abs(1 - Me.t) End Sub تحياتي .
  22. السلام عليكم لمستخدمي حقل الترقيم التلقائي AutoNumber الراغبين في ابتداء الترقيم من 1 مع بداية كل سنة جديدة . الحل عن طريق استعلام يظهر التسلسل للسنة نفسها مع وجود التسلسل الرئيس كما هو ودون التعديل عليه . لاحظوا الإستعلام QryTransaction . تحياتي . AnnualSeq.rar
  23. السلام عليكم مثال مرفق كما يوجد بالمنتدى مثال للترقيم على الشبكة أي بوجود أكثر من مستخدم للبرنامج . تحياتي . NewSeq4NewYear.rar
  24. السلام عليكم لمعلوماتكم : سؤال وجواب عن الخطأ في حساب وقت صلاتي الفجر والعشاء تحياتي .
  25. السلام عليكم الصراحة الصورة التي كانت بذهني عنكما أقل مما لمست في عملكما ، الحقيقة أنا الآن مطمئن أن الأمور في هذا المثال ( لن أقول مشروعا ) ستسير على أحسن حال . عموما لا تنتظرا أن أكون حكما بينكما أو كالمدرس لكما حتى أرجح عمل على آخر وخصوصا بعد ما رأيت من قدرة احترافية لكليكما . قد أقترح نقطة فاصلة أو حاسمة إن سمحتما لي ، وهي أن نختار أحد العملين على الأداء وليس على طريقة التصميم ولكن ليس الآن ، بل بعد إضافة الترتيب . أو أن يرجح أحدكما عمل الآخر حتى هذه المرحلة ثم نقوم بعدها بتوزيع المتبقى من المطلوبات في هذا النموذج وفي هذه المرة اتركا لي عملية التوزيع إن سمحتما لي أيضا . أنا الآن بانتظار ردكما على مشاركتي هذه ، حتى ننطلق إلى المرحلة التالية بعون الله وتوفيقه . ملاحظة : نفس ملاحظتي لعمل أخي رضوان هي نفسها لعمل أخي أبو سليمان وهي يجب أن ننظف قيم الولاية والمدينة بعد النقر على البلد أي نجعل قيمتهما لا شيء ( "" ) . تحياتي .
×
×
  • اضف...

Important Information