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

Foksh

الخبراء
  • Posts

    2,155
  • تاريخ الانضمام

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

  • Days Won

    78

كل منشورات العضو Foksh

  1. اعتقد إنه من السليم بناء العلاقات عند تصميمها وقبل انشاء النماذج ، وليس بعدها على العموم من وجهة نظري ، رأيت أن رقم الأقدمية هو الأنسب ليكون مفتاح الربط بين الجداول . الجمعية التعاونية.zip
  2. للتوضيح:- لعرض ملفات من نوع PDF داخل النموذج ، سيلزمك برنامج ( Adobe Acrobat Reade ) . وهذا رابط للمساهمة
  3. تفضل أخي الكريم ، استبدل الكود في حدث بعد التحديث بالتالي :- Private Sub مربع_تحرير_وسرد137_AfterUpdate() On Error Resume Next Dim strFilter As String Dim strName As String strName = Replace(Replace(Replace(Replace(Me.مربع_تحرير_وسرد137, "أ", "ا"), "إ", "ا"), "ة", "ه"), "ه", "ه") If Len(strName) > 0 Then strFilter = "Replace(Replace(Replace(Replace([jname], 'أ', 'ا'), 'إ', 'ا'), 'ة', 'ه'), 'ه', 'ه') LIKE '*" & strName & "*'" End If With Me.sub_ورقة1.Form If Len(strFilter) > 0 Then .Filter = strFilter .FilterOn = True Else .Filter = "" .FilterOn = False End If .Requery End With End Sub جربه وأخبرني بالنتيجة Waheidi2005_2.zip
  4. أعتذر عن التأخير أخي سامر ، بالنسبة للطلب الأول ( عدد المكررات في الرسالة ) تفضل :- استبدل الحدث في النموذج قبل التحديث من الماكرو إلى هذا الكود Private Sub Form_BeforeUpdate(Cancel As Integer) Dim count As Integer count = DCount("[ID_Number]", "[Ekhla_Details]", "[ID_Number]='" & Forms("Ekhla_Details").Controls("IDNumber").Value & "'") If count >= 1 Then Dim response As VbMsgBoxResult response = MsgBox("أن هذا الموظف له إخلاء سابق عدد " & count & " ، هل تريد الاستمرار ؟ ", vbYesNo) If response = vbYes Then Else Me.Undo MsgBox "تم إلغاء السجل", , "" End If Else MsgBox "تم إلغاء السجل", , "" Me.Undo End If End Sub Arciving222.zip
  5. هذا الكود في حدث بعد التحديث Private Sub ProjectNo_AfterUpdate() Dim strSQL As String Dim rs As DAO.Recordset strSQL = "SELECT LEFT(ReferenceNo, Len(ReferenceNo) - 5) AS ReferenceWithoutDDDD FROM Incoming WHERE ProjectNo = '" & Me.ProjectNo & "'" Set rs = CurrentDb.OpenRecordset(strSQL) If Not rs.EOF Then ReferenceNo.Value = rs!ReferenceWithoutDDDD Else MsgBox "لا توجد بيانات متطابقة" End If rs.Close Set rs = Nothing End Sub وهذا الملف بعد فحصه ومتأكد انه يعمل خلاف ما اظهرت في الصورة. New Microsoft Access Database (3).accdb
  6. افتح سجل جديد اخي الكريم واخبرني بالنتيجة 😅
  7. تفضل اخي @Emad.85 . هل هذا طلبك ؟؟ New Microsoft Access Database (3).accdb
  8. لم لا تستعمل دالة Dlookup 😊
  9. هو ينفع ليه لأ .. بس أوصل البيت هحاول أتفاهم مع جهازي 😅 أصله واخد على خاطره حبتين اليومين دول 😁
  10. فسر لي حبه حبه ، قبل الفطار بنكون مش مجمعين ، وبعد الفطار برضو بنكون مش مجمعين .
  11. بما أننا في شهر رمضان سأشرحها لك بطريقة تفتح شهيتك تخيل انك ناوي تطبخ دجاج مشوي ( الهدف ) ، ولكنك في السوق اشتريت بطاطا ..... فلماذا لم نطبخ الدجاج !!! اخي الكريم الاستعلام الذي انشأته هو لعرض السجلات وليس لعد عددها . كمثال ؛ الدالة DCount تستخدم لعد سجلات محددة مع / بدون شروط . فهل استخدمتها في استعلامك أو طريقة تصميم التقرير ؟
  12. أخي الكريم @مازن الحسيني ، ليس للتقرير علاقة بالاستعلام المبني عليه لا من قريب ولا من بعيد . الاستعلام لعرض السجلات بشرط ملاك . وفي التقرير تريد جلب المجموع والأعداد لهذه السجلات
  13. أخي سامر .. سيكون التعديل منقسماً إلى جزئين . الأول في الماكرو الموجود في حدث قبل التحديث للنموذج كالتالي :- من الجملة التالية :- DCount("[Ekhla_serial]","[Ekhla_Details]","[Ekhla_Details]![ID_Number]=[Forms]![Ekhla_Details]![IDNumber]")>=1 ألى الجملة التالية :- DCount("[ID_Number]", "[Ekhla_Details]", "[ID_Number]=[Forms]![Ekhla_Details]![IDNumber]")>=1 ثم سيتم التعديل على الاستعلام DO كالآتي :- من الجملة SQL التالية :- UPDATE Ekhla_Details SET Ekhla_Details.Ekhla_Kind = [Forms]![Ekhla_Details]![Ekhla_Kind], Ekhla_Details.coodee = [Forms]![Ekhla_Details]![coode], Ekhla_Details.Emp_Name = [Forms]![Ekhla_Details]![coodee], Ekhla_Details.ID_Number = [Forms]![Ekhla_Details]![ID_Number], Ekhla_Details.الموقع = [Forms]![Ekhla_Details]![y4], Ekhla_Details.الفرع = [Forms]![Ekhla_Details]![y5] WHERE (((Ekhla_Details.Ekhla_serial) Like "*" & [Forms]![Ekhla_Details]![Ekhla_serial] & "*")); إلى جملة SQL التالية :- UPDATE Ekhla_Details SET Ekhla_Kind = [Forms]![Ekhla_Details]![Ekhla_Kind], coodee = [Forms]![Ekhla_Details]![coode], Emp_Name = [Forms]![Ekhla_Details]![coodee], ID_Number = [Forms]![Ekhla_Details]![ID_Number], الموقع = [Forms]![Ekhla_Details]![y4], الفرع = [Forms]![Ekhla_Details]![y5] WHERE (((Ekhla_Details.Ekhla_serial) Like "*" & [Forms]![Ekhla_Details]![Ekhla_serial] & "*")); وأعلمني بالنتيجة أخي سامر .. Arciving222.zip
  14. في اي نموذج اخي @سامر محمود ، حدد لنا اذا سمحت
  15. الموقع الأول الموقع الثاني الموقع الثالث لتأثيرات النصوص ( عربي - English )
  16. الفكرة واضحة أخي الكريم ، أعتقد يوجد موضوع هنا للأستاذ @Moosak يخص موضوع التحديث ، وقد استخدمتها سابقاً مع إجراء بعض التعديلات حسب حاجتي لمشروع طبعاً . ويمكن التطوير على الفكرة بما يتطلبه مشروعك إذا فهمت آلية عمل فكرة الأستاذ موسى . أما بخصوص موضوع اعادة ربط الجداول بعد التحديث على أجهزة الشبكة ، فتوصلت الى هذه الفكرة علها تكون صائبة. وأخبرني بنتيجتها بعد تحربتها على الشبكة المحلية لديك فضلاً لا أمراً 🥰 ReConnectServer.accdb
  17. باعتقادي هي نفس الفكرة الظاهرة في صورة الأخ @hassan123 ، بحيث ان مسار الجهاز الرئيسي ثابت لا يتغير كون الشبكة محلية . فإذا تم تثبيت المسار للجهاز المصدر في جميع الأجهزة الهدف فسيكون الموضوع بسيط . باعتقادي وكأن الفكرة هي الربط بقاعدة الجداول وكأنها بجانب قاعدة البيانات الحالية عن طريق تحديد مسارها في كود مديول الـ Relink ( في موضوع آخر ). واعتذر معك خروجي عن الموضوع ، وسأحاول لاحقاً توضيح وجهة نظري في هذا الموضوع 🤗
  18. في حدث بعد التحديث لمربع النص 1 جرب هذا الكود me.text2.value = me.text1.value الاسماء حسب حاجتك
  19. نقطة جميلة وذكية ذكرتها معلمي الفاضل ، ولكن أعتقد يوجد طريقة لتحديد اسم قاعدة البيانات الثانوية للجداول ومسارها داخل التحديث وسيتم الارتباط بها تلقائيا. من وجهة نظري 😊
  20. على حسب ما فهمت 😅 جرب هذا الكود عند الفتح :- Private Sub Form_Open(Cancel As Integer) Me.RecordSource = "SELECT Qbook_Reader.Readerm FROM Qbook_Reader WHERE Qbook_Reader.Num = " & [Forms]![FReaderB]![FReaderSubB].[Form]![Num] End Sub أو هذا عند التحميل ، ولا فرق بينهما سوى وقت الحدث . Private Sub Form_Load() Me.RecordSource = "SELECT Qbook_Reader.Readerm FROM Qbook_Reader WHERE Qbook_Reader.Num = " & [Forms]![FReaderB]![FReaderSubB].[Form]![Num] End Sub حيث Me تعني النموذج الحالي ، وأعتقد لا حاجة لشرح الباقي 😅
  21. تفكير بصوت مرتفع ،، بما ان المشروع عبارة عن قاعدتين إحداهما الرئيسية التي تحتوي كافة العناصر دون الجداول ومرتبطة بجداول القاعدة الثانوية ، ودون اي تغيير في قاعدة الجداول ، فأعتقد أنه لا حاجة لإعادة الربط بين قاعدة النماذج وقاعدة الجداول. أيضاً كنت اعمل على فكرة وهي بشكل مختصر كالآتي :- عند فتح قاعدة البيانات ستقوم قاعدة البيانات الرئيسية بفتح ملف TEXT على موقع جوجل درايڤ مثلاً وجلب رقم الاصدار ومقارنته مع حقل في قاعدة البيانات نفسها ؛ فإذا كانت القيمة أكبر في ملف الـ TEXT فسيخبرك بوجود نسخة جديدة مع الذهاب إلى رابط التحميل ليتم تحميلها وستقوم بدورك كمستخدم باستبدال النسخة القديمة بالحديثة . وغير ذلك لن يتم إخبار المستخدم بوجود تحديث جديد. والأداة الوسيطة التي ذكرها معلمنا الجليل @ابوخليل ستكون قاعدة بيانات مستقلة وظيفتها فقط التنزيل واستبدال النسخة القديمة بالحديثة. هذا تصور قيد التطوير ولكن انشغالي ببرنامج الحضور والإنصراف هو من اشغلني عن استكمال الفكرة.
  22. اخي الكريم @abouelhassan هي من جوجل مع التعديل عليها واعادة تصميمها حسب حاجتي باستخدام الفوتوشوب . لكن غداً إن شاء الله سأرسل بمشاركة جديده اكثر من رابط مجاني يحتوي على الكثير من العناوين التي قد تحتاجها بكل التخصصات 🤗 .
×
×
  • اضف...

Important Information