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

عمر ضاحى

الخبراء
  • Posts

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

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

  • Days Won

    8

كل منشورات العضو عمر ضاحى

  1. جرب الكود هذا Dim db As DAO.Database Dim rs As DAO.Recordset Dim xNUMBER As Double Set db = CurrentDb Set rs = db.OpenRecordset("T1", dbOpenDynaset) xNUMBER = mh1.Value Do While Not rs.EOF If rs!daraja >= xNUMBER Then rs.Edit rs!CurrFasl = "F" rs.Update Else rs.Edit rs!CurrFasl = "" rs.Update End If rs.MoveNext Loop rs.Close Set rs = Nothing db.Close Set db = Nothing MsgBox "DONE" Me.Form.Requery
  2. يعنى انت عاوز تقول لو الدرجة اعلى من 16 يكتب F ؟ طيب لو اقل من 16 يعمل ايه ؟
  3. جرب هذا الكود فى كل مره هيسألك اين تريد حفظ التقرير وقابل للتطوير Dim reportName, FileNameIs As String Dim fd As fileDialog Dim strFolderPath As String reportName = "RepPrintTallyPO" FileNameIs = "POs Report" Set fd = Application.fileDialog(msoFileDialogFolderPicker) If fd.Show = -1 Then strFolderPath = fd.SelectedItems(1) strFolderPath = strFolderPath & "\" & FileNameIs & ".xls" DoCmd.OutputTo acOutputReport, reportName, acFormatXLS, strFolderPath, False MsgBox "The File Saved On ( " & strFolderPath & " ) Successfully" Else MsgBox " The file has been cancelled ", vbCritical End If Set fd = Nothing
  4. فى اعدادات النظام تحقق من التلى لك تحتار عربي مصر او السعودية زي ما تحب
  5. بعد اذن استاذى الجليل / @ابوخليل هل جربت هذا الموضوع ممكن تلاقى ما تريد فى نظام الحضور والانصراف للموظفين هنا انا كنت عامل حاجه زي كده زمان جرب وان شاء الله هتلاقى ما تريد
  6. ارفقي النماذج (والتى ذات صله) كامله (او تشمل المعطيات كامله) وحددي المطلوب علشان نقدر نساعدك صح لكن ترفقي نموذج ناقص المعطيات اكيد قد تصل لك اجابه غير دقيقه بالنسبه لطلبك ممكن تنفذي ده باستعلام افضل وفى حدث عند التغير ياخذ البيانات من الفرعي للرئيسي غير ان النموذج مبني على ان ياخذ مصدر بياناته من النموذج الاخر الرئيسي (الشاشة الاولى) ف بالتالى طلبك متعارض لحل الاشكالية هو عمل نموذج مستقل بذاته ليس له دخل باى نموج اخر * اقصد النموذج الفرعي
  7. المفترض وحسب ما فهمت من طريقة النماذج الموجوده فى المرفق ان ف نموذج بيتم فيه اظهار بيانات المريض ومنها بيتم فتح النموذج الخاص بالتحاليل وتخلصي معاملته لكن الانقل بين المرضي وهناك نموذج فى الخلفيه فيه بيانات المريض هنا ممكن يعمل ليكى لغبطه الافضل وبما انك مبتدئه ان تيسري على نفسك وتجعلى الامور اكثر سلاسه بتحديد مهام معينه لكل نموذج ثم لما تتمكنى من فهم الاليه التى تقام عليها معالجة البيانات تقدري بعدها ان تطوري لكن كونك تطلعي بطلب ثم طلب اخر يخالف الطالب الاول هنا هيظهر لكي مشاكل
  8. ال بيعمله الكود فى النموذج المرفق انه بيعدل على السجل الحالى علشان كده اخبرتها تزيله ف واضح ان فى لغبطه كبيره فى طلبها و تعارض
  9. حضرتك ما فهمتي كلامي المفترض ان الفورم هذا خاص بمريض واحد فقط لانه بيتم فتحه عن طريق فورم اخر رئيسي واذا اردتي الانتقال الى مريض اخر اذهبي الى الفورم الرئيسي وانتقلى الى المريض الاخر وارجعي افتح الفورم هذا اسهل لكي لكن اذا اردتي هذا النموذج له قائمة يبقى يكون مستقل بذاته
  10. استاذه / صفي طلبك فى حد ذاته فيه تعارض لا يجوز ان تطلبي تقريب وتحديد تاريح ميلاد لان الاثنين معا لن يكون فيها دقه اذا اردتي تحويل تاريخ الميلاد الى عمر او تحويل العمر الى تاريخ ميلاد طلبك هنا هيكون مظبوط لكن ان تطلبي تحديد تاريخ الميلاد وتقريب العمر هنا هتظهر نتائج خطأ لاحظي الصوره التاليه فى اخر مشهد بعد ما جاب تاريخ الميلاد وقربت غير الدينا ولتحويل العمر الى تاريخ ميلاد هتحتاجي الدالة هذه Function CalcBdate(years As Integer, months As Integer, days As Integer) As Date CalcBdate = DateAdd("yyyy", -years, Date) CalcBdate = DateAdd("m", -months, CalcBdate) CalcBdate = DateAdd("d", -days, CalcBdate) End Function وايضا الصب هذا Sub TestCalcBirthdate() Dim years As Integer Dim months As Integer Dim days As Integer years = Me.Y.Value months = Me.M.Value days = Me.D.Value bdate = CalcBdate(years, months, days) End Sub age collect.rar.
  11. وليه ينزل نسخه ويفرمت فى نظام وندوز بيشتغل من على الفلاشه مباشرتا زي اسطوانت هرنز الإصدار الاخير ينزلها ويدخل يعمل كل حاجه هو عاوزها
  12. بص علاج موضوعك هنا من الاخر
  13. الخطأ هذا من الكود الخاص بيكي ممكن تستخدمي الدالة ال انا ارفقتها ليكي فى الاول للتحويل العمر الي يوم وشهر وسنه
  14. بعتذر عن التأخير اتفضلى الكود حسب طلبك (بعد اصلاح خطأ سابق) Sub xCalcAge() Dim years As Integer Dim months As Integer Dim days As Integer Dim xD, xM, xY As Integer Dim xAge As Double years = Nz(Y, 0) months = Nz(M, 0) days = Nz(D, 0) '---------------------------------------------------------- If days >= 20 Then xM = months + 1 xD = 0 Else xD = days End If '---------------------------------------------------------- If xM >= 10 Then xY = years + 1 xM = 0 Else xY = years xM = months End If '---------------------------------------------------------- If xY = 0 And xM = 0 And xD <> 0 Then xAge = xD ageunit = "Days" ElseIf xY = 0 And xM <> 0 And xD <> 0 Then xAge = xM ageunit = "Months" ElseIf xY = 0 And xM <> 0 And xD = 0 Then xAge = xM ageunit = "Months" ElseIf xY <> 0 And xM = 0 And xD <> 0 Then xAge = xY ageunit = "Years" ElseIf xY <> 0 And xM <> 0 And xD = 0 Then xAge = xY & "." & xM ageunit = "Years" Else xAge = xY & "." & xM ageunit = "Years" End If age = xAge End Sub مرفق الملف age collect.rar . جربي واذا تم حل المشكلة اختاري افضل اجابة
  15. اقصد ان الجزء من هنا وفوق خاص بجلب العمر وتوزيعه على شهور وايام وسنوات years = Val(arrAge(0)) months = Val(arrAge(2)) days = Val(arrAge(4)) لكن انت ممكن تعملى ده اذا انت حابه تكتبى السنوات والشهور والايام بنفسك دون حساب years = Y 'هنا هياخد قيمة السنوات من حقل السنوات فى النموذج months = M 'هنا هياخد قيمة الاشهر من حقل الاشهر فى النموذج days = D 'هنا هياخد قيمة الايام من حقل الايام فى النموذج وهكذا والباقي الكود هيكمله عادي
  16. بصى فى الكود (الصب) Sub xCalc() Dim strAge As String Dim arrAge() As String Dim years As Integer Dim months As Integer Dim days As Integer Dim xD, xM, xY As Integer Dim xAge As Double 'هنا الدالة التى تحسب العمر strAge = CalcAge(bdate, Date) 'هنا بيتم البدء فى فصل الايام والشهور والسنوات arrAge = Split(strAge, " ") 'هنا تم التوزيع السنوات والشهور والايام على المتغيرات الثلاث 'هنا ممكن تستبدلى بالتوزيع الخاص بكي years = Val(arrAge(0)) months = Val(arrAge(2)) days = Val(arrAge(4)) ' 'هنا تم توزيع النتائج على الحقول الثلاث فى النموذج Y = years M = months D = days '---------------------------------------------------------- If days >= 20 Then xM = months + 1 xD = 0 Else xD = days End If '---------------------------------------------------------- If months >= 10 Then xY = years + 1 xM = 0 Else xY = years xM = months End If '---------------------------------------------------------- Debug.Print xD Debug.Print xM Debug.Print xY If xY = 0 And xM = 0 And xD <> 0 Then xAge = xD ageunit = "Days" ElseIf xY = 0 And xM <> 0 And xD <> 0 Then xAge = xM ageunit = "Months" ElseIf xY = 0 And xM <> 0 And xD = 0 Then xAge = xM ageunit = "Months" ElseIf xY <> 0 And xM = 0 And xD <> 0 Then xAge = xY ageunit = "Years" ElseIf xY <> 0 And xM <> 0 And xD = 0 Then xAge = xY & "." & xM ageunit = "Years" Else xAge = xY & "." & xM ageunit = "Years" End If age = xAge 'Debug.Print xAge End Sub لاحظي انك ممكن تقفذى وتلغي وظيفة الكود من السطر هذا years = Val(arrAge(0)) months = Val(arrAge(2)) days = Val(arrAge(4))
  17. انا واضع لحضرتك الشروط فقط استبدلى الجذء الخاص بمصدر المتغير xD xM xY
  18. الكود ال انا لاغيه محوله لتعليق راجعي الاكواد غير اني كنت ملاحظ ان الموضوع ادخال يدوي صحيح ؟ عموما انا شايف كده افضل (مجرد راي طبعا والامر كله اليكي تختاري ما تفضلينه حسب حاجتك) اذا حابه تعديله يمكن ان الغيه لكي اذا حبيتي
  19. لازم تاخذ الملف من على الكمبيوتر الثاني باى طريقه استخدام فلاشة اى طريقه المهم تاخذ الملف من الجهاز بدونه لا يمكن حل المشكلة
  20. فقط قوم بحذف الجداول المرتبطه فى الواجهه وانسخ الجداول الاخري من القاعدة الخلفية الى الواجهه وخلاص كده ^_^ مع مراعات العلاقات بين الجداول (قد تحتاج الى ربطها مره اخرى
  21. بعد الاطلاع على المرفق اولا لا توجد علاقة بين جدول الموظفين وجدول تسجيل الحركات ثانيا هناك الكثير من المواضيع التى تتكلم عن هذا هذا موضوع لاستاذى / @ابو جودي الغرض مش انك تاخذ الملف نسخ ولصق الغرض ان تتعلم كيف بناء الجداول والعلاقات بينهم لانهم اساس اي برنامج والكثير فقط استخدم ادات البحث واتعلم كيف بنو العلاقات
  22. انا مش شايف الشرط ده موجود فى النموذج المرفق عموما الحل قومي بحذف الكود لانه هو سبب خراب ملطه وثانيا ضيفى الشرط فى الاستعلام وفى النماذج الاخري اجعلى شرط الاستعلام هو رقم المريض فى النموذج الفرعي
  23. هل هذا ما تريدين age collect.rar انا وضعت تقريبا جميع الاحتمالات التى جربتها قد يكون هناك احتمالين او 3 لسه ما فكرت فيهم لكن خليهم عند التجربه انا لغيت الاكواد التى وضعتيها ووضعت ليكي مديول وصب
  24. ان من اهم النقاط لعمل برنامج على الاكسيس (ذات طبيعة قواعد بيانات) ان يمنع تكرار البيانات (الا عند الحاجة لحلول مؤقته) وعلشان توصلى نتائج صحيحه لازم ميكنش فى تكرار للبيانات وهنا ياتي دور العلاقات والاستعلامات علشان اجمع بيانات من اكثر من جدول وتوجد بينهم علاقة نعود الى النقطه الخاصه بيكي اولا لازم يكون فى جدول يحتوي على بيانات المرضى ولا يتكرر فى مكان اخر مره اخرى يتفرع منه جدول فرعي (قد تكون طبيعة البيانات قابلة لتكرار رقم المريض لكن ليس كل البيانات وقد لا حسب طبيعة البيانات) السؤال حتى اتمكن من مساعدتك انتى عاوزه تعرضي جميع المرضى فى هذه القائمة ام فقط الذى ليه شرط (اذا نعم فما هو الشرط) ثانيا ما فائدة النموذج الاول اذا كان سيتم تكرار عرض جميع المرضى فى النموذج الثاني ؟
  25. احذفى ال . من الكود Me.age = Me.Y & "." & Me.M الى Me.age = Me.Y & " " & Me.M
×
×
  • اضف...

Important Information