اذهب الي المحتوي
أوفيسنا

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    404

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

  1. السلام عليكم أخي علاء ، المنتدى مليء بمثل هذا السؤال ، وكل ما عليك عمله هو استخدام خاصية البحث ، قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف واليك بعض هذه المواضيع: https://www.officena.net/ib/topic/43015-استخراج-تاريخ-الميلاد-من-الرقم-القومي-عنوان-معدل/?do=findComment&comment=247938 https://www.officena.net/ib/topic/49846-طريقة-كتابة-الرقم-القومي/?do=findComment&comment=304211 https://www.officena.net/ib/topic/73911-إستخراج-تاريخ-الميلاد-والسن-والنوع-من-الرقم-القومي/?do=findComment&comment=475682 https://www.officena.net/ib/topic/62992-استخراج-تاريخ-من-الرقم-القومي/?do=findComment&comment=409130 وهذا البحث يعطيك جميع المواضيع التي تخص الاكسس https://www.google.com/search?biw=1400&bih=870&ei=ugIfWp7dC8qza6a5m9AG&q=-excel+access+"الرقم+القومى"+site%3Awww.officena.net&oq=-excel+access+"الرقم+القومى"+site%3Awww.officena.net&gs_l=psy-ab.3...18076.24409.0.25876.0.0.0.0.0.0.0.0..0.0....0...1.1.64.psy-ab..0.0.0....0.ngMmP-xMScE جعفر
  2. هذه هي الطريقة الصحيحة ، ولم يتوقف عندي الكود ، واكمل بالطريقة الصحيحة جعفر ششششش ، لا يسمعوك ويردون عليك
  3. انت عملت موضوع جديد لسؤالك الجديد ، وهذه هي الطريقة الصحيحة ، حسب قوانين المنتدى جعفر
  4. وهذه مشاركة كانت مع اخي شفان جعفر
  5. السلام عليكم لم اعرف كيف اجعل برنامجك يفتح النموذج FormTest عند اختيار "فهرسة" ، الظاهر يجب ان تضيفه الى قائمة النماذج في احد جداولك ، وتعطيه الصلاحية جعفر 765.MyPRG.mdb.zip
  6. الى الصباح خير ان شاء الله ، ولكن انزل هذا المرفق ، وفيه كل الكود اللي تريده ان شاء الله http://blog.nkadesign.com/wp-content/uploads/2008/05/DatabaseRestart.zip جعفر
  7. وبعدين اذا ما تعرف ، اخوي شفان ما يسمح لي ان اعمل الاشياء الصغيرة البسيطة الله يسلمك هاي تقدر تعملها بالخطوات التالية: 1. احفظ الكود الطويل اللي في مشاركتي السابقة في وحدو نمطية ، 2. اكتب الكود التالي علشان يشغل الوحدة النمطية ويغلق البرنامج: call CompactDB docmd.quit والسلام جعفر
  8. السلام عليكم اخي علي عدم وجود الاجابة لأن الموضوع مو بالسهولة ، وشيء لا يتم تداوله يوميا الجواب بإختصار وحسب قرآتي ، لا يمكن عمل الضغط والاصلاح على البرنامج الذي تعمل عليه. تحذير ، انا لم اجرب اي من هذه الطرق ، فرجاء التجربة على نسخة من برنامجك. هناك طريقتين لعمل الضغط والاصلاح على البرنامج الذي تعمل عليه: 1. كود يجعل البرنامج يضغط ويصلح عند اغلاق البرنامج: Application.SetOption "Auto compact", True او للإصدارات السابقة Dim control As Office.CommandBarControl Set control = CommandBars.FindControl( Id:=2071 ) control.accDoDefaultAction 2. كود : أ. يقوم بعمل برنامج صغير خارج برنامجك ، ب. هذا البرنامج الصغير فيه امر ان يقوم بعمل الضغط والاصلاح لبرنامجك ، ج. هذا البرنامج ينتظر 5-10 ثواني (حسب برمجتك) ، او يراقب الملف ldb. او laccdb. حتى اختفائه (هذا المرفق يغلق تلقائيا لما تغلق قاعدة بيانات الاكسس) ، وبعدها يصدر الامر اعلاه (ب) ، د. ثم الكود يغلق برنامجك مباشرة بعد عمل البرنامج الصغير ، هـ. وعندها يقوم البرنامج الصغير بالامر ، و. وتستطيع ان تطلب من البرنامج الصغير ان يفتح قاعدة البيانات عند انتهاء عمله: Public Function CompactDB() Dim strWindowTitle As String On Error GoTo err_Handler strWindowTitle = Application.Name & " - " & Left(Application.CurrentProject.Name, Len(Application.CurrentProject.Name) - 4) strTempDir = Environ("Temp") strScriptPath = strTempDir & "\compact.vbs" strCmd = "wscript " & """" & strScriptPath & """" Open strScriptPath For Output As #1 Print #1, "Set WshShell = WScript.CreateObject(""WScript.Shell"")" Print #1, "WScript.Sleep 1000" Print #1, "WshShell.AppActivate " & """" & strWindowTitle & """" Print #1, "WScript.Sleep 500" Print #1, "WshShell.SendKeys ""%yc""" Close #1 Shell strCmd, vbHide Exit Function err_Handler: MsgBox "Error " & Err.Number & ": " & Err.Description Close #1 End Function جعفر
  9. نعم ، بالاضافة الى التغييرات الاخرى اللي ذكرتها لك في مشاركتي السابقة جعفر
  10. السلام عليكم سيدي الفاضل ، انت اذكى من ان تطرح مثل هذا السؤال السهل ولكن صادفتك رسالة الخطأ "Query is too complex" ، والتي لم تستطع التغلب عليها ، والتي اخذت مني كل هذا الوقت تقريبا !! المشكلة كانت في حقل المجموع الاخير txtTotal !! انا عملت عملت الزر C04 ، فرجاء النظر في الكود الذي فيه ، واعمل الكود لبقية الازرار التغييرات التي عملتها في البرنامج: نقوم بتصفية بيانات الاستعلام qryDiscountReport عن طريق الحقل Transfer ، والذي يأخذ معلومته من الحقل المخفي iTransfer في النموذج FrmTransfer_Comptabilité . ولأننا قمنا بتصفية البيانات ، لذا فالاستعلام qry_rptD_0 يأتينا جاهزا بالبيانات المطلوبة فقط ، فعليه قمت بجمع قيمة الحقل TheSum منه الى الحقل txtTotal في التقرير. جعفر 766.تصفية.mdb.zip
  11. وبعد قراءة السؤال مرة ثانية ، اتضح انك محتاج متوسط شخص واحد فقط ، لذا ، فإجابة اخي شفان تفي بالموضوع جعفر
  12. السلام عليكم كنت محتاج غفوة شكرا اخي شفان ، ولكن اذا كان عندك اكثر من شخص ، فاستعلامك يعطيك اكبر 3 قيم لشخص واحد فقط هذه بيانات الجدولين: . استعملت الاستعلام التالي لنحصل على اكبر 3 نتائج لكل شخص: SELECT insert.idd, sub.reading FROM [insert] INNER JOIN sub ON insert.idd = sub.id WHERE (((sub.reading) In (SELECT TOP 3 sub.reading FROM sub WHERE sub.id=[insert].[idd] ORDER BY sub.reading DESC))); . وهذا شكله في التصميم . والنتيجة . ثم عملت استعلام تجميعي لنحصل على المتوسط . والنتيجة . جعفر 768.Database1.accdb.zip
  13. رجاء ترفق الجداول حتى نعمل الاستعلام
  14. يجب عمل استعلام وتربط فيه الجدولين ، ثم تجعل الاسم الحقل الاول والفرز تصاعدي Asc ، ثم تجلب الحقل المطلوب وتجعل الفرز تنازلي Desc جعفر
  15. شكرا اخي رعد ، ولكنك لم توضح ماهو المطلزب جعفر
  16. وعليكم السلام اعمل الفرز للحقل المطلوب من الاكبر الى الاصغر Desc. جعفر
  17. وعليكم السلام اخي كريمو ان شاء الله تكون في صحة وعافية ، صار لي زمان ما شفت لك مشاركة رجاء تخبرني الطريقة اللي اوصل للمكان المطلوب (لأن الظاهر ان المسميات العربية والانجليزية في سؤالك تداخلت ، وجعلت السؤال غير مفهوم) ، جعفر
  18. الظاهر من الكود ان التسلسل تمام!! اعمل التالي: شوف الرابط التالي اللي بتدخل به داخل الكود ، واعمل النقطة رقم 1 على اول سطر عندك في الكود ، وشغل النموذج الى ان يجي التركيز على الزر ، عندها بينقلك البرنامج الى الكود ، والسطر اللي يكون باللون الاصفر ما بيكون البرنامج قد نفّذه ، فكل اللي عليك عمله هو الضغط على الزر F8 من لوحة المفاتيح كيبورد ، واللي بينتقل السطر الاصفر للسطر التالي حسب طلب الكود. المطلوب منك هو: انت تدري اي حقل يجب ان ينتقل اليه الكود ، ثم اي حقل تالي ، فأثناء متابعتك للكود ، لاحظه لما ينتقل الى سطر غلط في تسلسل حقول النموذج ، وعندها خلي مؤشر الفأرة على اسماء الحقول في الكود لتعرف قيمتها ، ومنها نتعرف وين المعادلة الخطأ. بهذه الطريقة تعرف وين المشكلة ، وبعدين تشوف شو طريقة حل المشكلة جعفر
  19. وعليكم السلام 1. بالنسبة للنموذج المستمر ، اي تغيير تعمله في حقل ، فسيغير الحقل في جميع السجلات ، لهذا السبب يجب عليك استعمال التنسيق المشروط Conditional Formating ، فيمكنك ان تغير لون الخط الى ابيض مثلا ، فيكون كأنه مخفي 2. في اعدادات النموذج ، اجعل Allow Additions = No جعفر
  20. وعليكم السلام أخوي كاسر واسعد الله ايامكم بهذا اليوم المبارك انا نظرت الى الكود وليس على طريقة عمله ، وشفت ان المشكلة انك ما رابط Else مع IF اللي خلفها ، فالمفروض ان الجمله تكون ElseIf مثل بقية الكود اللي فوق واللي بدون مشاكل ، وهذا مثال: فانت هنا ضيعت الكود ، وما اعطيته الطريقة الصحيحة لفحص الشرط If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Kinship].SetFocus Else If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![service]) Then Forms![Forme_Fatora]![Forme_Visitors2]![service].SetFocus Else If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Travel]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Travel].SetFocus Else If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary].SetFocus End If وهذا تعديل الكود من طرفي ، مع تعديل التنسيق ، حتى كل شيء يكون واضح ومرتب: Private Sub sav_GotFocus() If (IsNull(Me![Num_brnamge])) Then MsgBox "أدخل رقم الرحلة ", 48, "تـنـبـيـه !" Me.Num_brnamge.SetFocus ElseIf (IsNull(Me![PcDigtf])) Then MsgBox "أدخل رقم الزائر ", 48, "تـنـبـيـه !" Me.PcDigtf.SetFocus ElseIf (IsNull(Me![Fdate])) Then MsgBox "أدخل تاريخ الفاتورة ", 48, "تـنـبـيـه !" Me.Fdate.SetFocus ElseIf (IsNull(Forms![Forme_Fatora]![Forme_Visitors]![Independent_Facilities])) _ Or (Forms![Forme_Fatora]![Forme_Visitors]![Independent_Facilities] = "") Then MsgBox "أدخل الوضع !!!", 48, "تـنـبـيـه !" Forms![Forme_Fatora]![Forme_Visitors].SetFocus Forms![Forme_Fatora]![Forme_Visitors]![Independent_Facilities].SetFocus ElseIf (IsNull(Forms![Forme_Fatora]![Forme_Visitors]![service])) _ Or (Forms![Forme_Fatora]![Forme_Visitors]![service] = "") Then MsgBox "أدخل الخدمة المطلوبة !!!", 48, "تـنـبـيـه !" Forms![Forme_Fatora]![Forme_Visitors].SetFocus Forms![Forme_Fatora]![Forme_Visitors]![service].SetFocus ElseIf (Forms![Forme_Fatora]![Forme_Visitors]![service] <= 5 _ And (IsNull(Forms![Forme_Fatora]![Forme_Visitors]![Travel])) _ Or (Forms![Forme_Fatora]![Forme_Visitors]![Travel] = "")) Then MsgBox "أدخل طريقة السفر !!!", 48, "تـنـبـيـه !" Forms![Forme_Fatora]![Forme_Visitors].SetFocus Forms![Forme_Fatora]![Forme_Visitors]![Travel].SetFocus ElseIf (Forms![Forme_Fatora]![Forme_Visitors]![service] <= 5 _ And (IsNull(Forms![Forme_Fatora]![Forme_Visitors]![Itinerary])) _ Or (Forms![Forme_Fatora]![Forme_Visitors]![Itinerary] = "")) Then MsgBox "أدخل خط سير الرحلة !!!", 48, "تـنـبـيـه !" Forms![Forme_Fatora]![Forme_Visitors].SetFocus Forms![Forme_Fatora]![Forme_Visitors]![Itinerary].SetFocus End If 'IsNull(Me![Num_brnamge] '"===== If DCount("[id_visitors2]", "Tabil_Visitors2", "[Id_fatora]=id") < 1 And _ ((Forms![Forme_Fatora]![Forme_Visitors]![Independent_Facilities])) = 2 Then MsgBox "أدخل المرافقين !!!", 48, "تـنـبـيـه !" Forms![Forme_Fatora]![Forme_Visitors2].SetFocus Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2].SetFocus '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 'ملاحظة 'من هنا تبدأ مشكلة تداخل الكود '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ElseIf Not (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2]) _ Or (Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2] = "")) Then On Error Resume Next Me.Forme_Visitors2.SetFocus On Error GoTo 0 DoCmd.GoToRecord , , acFirst For i = 0 To Me.Forme_Visitors2.Form.Recordset.RecordCount - 1 If Not (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2])) _ And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship])) _ Or (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![service])) _ Or (Forms![Forme_Fatora]![Forme_Visitors2]![service] <= 5) _ And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Travel])) _ Or (Forms![Forme_Fatora]![Forme_Visitors2]![service] <= 5) _ And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary])) Then MsgBox "أدخل هذا الحقل !!!", 48, "تـنـبـيـه !" If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Kinship].SetFocus ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![service]) Then Forms![Forme_Fatora]![Forme_Visitors2]![service].SetFocus ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Travel]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Travel].SetFocus ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary]) Then Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary].SetFocus End If 'IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship]) Exit Sub End If 'Not DoCmd.GoToRecord , , acNext Next i End If 'DCount جعفر
  21. حياك الله ولكي يكتمل الكود ، يجب ان تفحص الجدول اذا كانت هذه القيمة تم اضافتها سابقا ، وإلا فسيكون عندك تكرار في سجلات الجدول 2 جعفر
  22. تفضل جعفر 49.1.View_Internet.mdb.zip
  23. تفضل هذا الكود يقوم بالعمل: Private Sub cmd_Do_Records_Click() Dim i As Integer Dim rst As dao.Recordset Set rst = CurrentDb.OpenRecordset("Select * From [2]") For i = Me.NumFrom To Me.NumTo rst.AddNew rst!ID = Me.ID rst![name] = Me!name rst!Numall = i rst![date] = Me.[date] rst.Update Next i rst.Close: Set rst = Nothing MsgBox "Done" End Sub جعفر 759.Database22.accdb.zip
  24. وعليكم السلام انا اعرض عليك طريقة التصفح فقط اذا فهمت سؤالك صح ، فانت تريد مواضيع قسم الاكسس اللي في الموقع ، ابتدأ من الموضوع 1 الى 774 ، كل اللي عليك تعمله هو عمل سجلات من 1 الى 774 بهذه الطريقة (فقط تغير الرقم 20 بالرقم المطلوب) ، https://www.officena.net/ib/topic/20-؟ . وكود عمل هذه السجلات ممكن يكون هكذا: dim rst as dao.recordset set rst=currentdb.openrecordset("Select * From [اسم الجدول]") for i = 1 to 774 rst.addnew rst![اسم الحقل]="https://www.officena.net/ib/topic/" & i & "-?" rst.update next i rst.close:set rst=nothing . ويمكنك استخدام احد برامجي من الروابط التاليه ، وتطويعها لتصفح صفحات الموقع: . . . وشيخ البرامج اعلاه . جعفر
×
×
  • اضف...

Important Information