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

نجوم المشاركات

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      14

    • Posts

      10000


  2. أبو إبراهيم الغامدي
  3. Shivan Rekany

    Shivan Rekany

    الخبراء


    • نقاط

      7

    • Posts

      3491


  4. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      6

    • Posts

      13390


Popular Content

Showing content with the highest reputation on 04/27/17 in all areas

  1. السلام عليكم وحياالله الشباب بالاضافة الى ما تفضل به أخي أوس رجاء تلاحظ تسلسل الارقام ، فهي 2 ثم 1 ، الاستعلام 1 مافيه مشكلة ، ولكنك لما تفتح الاستعلام 2 والذي مصدره الاستعلام 1 ، والظاهر ان فيه معيار فرز او تصفية في حقل معين ، اي حقل فيه معيار في الاستعلام او الكود ، يجب ان تجعل الحقل مفهرس في الجدول ، وإلا ستحصل على تأخير وعند تغيير الحقل في الجدول الى حقل مفهرس ، يجب ان تعمل Compact and Repair للقاعدة التي بها البيانات ، حتى يستفيد الاكسس من هذا التغيير. جعفر
    3 points
  2. للأسف لم اتشرف بالاطلاع على هذه المشاركة إلا الآن... فاتني الكثير!
    2 points
  3. السلام عليكم انا لم انزل المرفق ، ولكن لعمل مجلد داخل آخر ، يجب ان تعمل المجلد الخارجي ، فمجلد داخله ، فمجلد داخله ...... ، ولا تستطيع عمل المجلدات دفعة واحدة اعتذر اذا لم تكن ملاحظتي في سياق الطلب جعفر
    2 points
  4. الاستفادة تكون بالتالي.. إمكانية التعديل على النرجع بدون الحاجة إلى الوصول إلى المستخدم في حال كان المرجع على الخادم.. دمج أكثر من قاعدة بيانات لاستخدامها في مكان واحد كأن يكون هناك قاعدة بيانات للمخزون وأخرى للموظفين وأخري للأرشفة.. وهكذا
    2 points
  5. ههههههههههههههههههههه احيانا الواحد بيمر باشياء بتطير العقل
    2 points
  6. حياك الله اخي محمد اعتقد المطلوب يختلف قليلا . . تكرما فتح موضوع جديد وبمثال مصغر به المطلوب ليتم التطبيق عليه تحياتي
    2 points
  7. السلام عليكم جميعا.. لا يخفى على شريف علمكم أهمية المكتبات المرجعة في تطوير وتحسين قواعد بيانات أكسس، ومن المستحيل جداً أن تجد قاعدة بيانات بدون مكتبة مرجعة ما؛ سواءً كانت افتراضية أو مضافة من قبل المطور. .. لكن ما أعتقد أن بعضنا يجهله هو ما هية تلك المكتبات وكيفية ربطها والاستفادة منها.. والمكتبات المرجعية هي عبارة عن وظائف عامة Public Functions قائمة بذاتها أو مدرجة ضمن أصناف Classes، تم برمجتها لتستخدم على نطاق واسع. يمكن الوصول إلى المكتبات المتوفرة في ويندوز عن طريق مربع الحوار الخاص بإضافة المكتبات، أو عن طريق الشفرة عبر الإعلان عن متغير من نوع References، وما يميز هذا الأخير هو أنه يمكنك من تحديد مسار المكتبة وفحصه برمجيا؛ وبالتالي تصيد الخطأ ومعالجة.. << من الخطأ الشائع اعتقاد البعض أن ملفات المكتبات المرجعية يجب أن تكون ضمن مجلد نظام ويندوز System32 Folder! وهذا غير صحيح.. لكن ويندوز يقوم بوضعها هناك أفتراضياً؛ لسهولة الوصول والمشاركة بين التطبيقات، ولتقليل تكرار الملفات وخفض مساحة التخزين >> >> أكسس مكتبة مرجعية.. > عند إضافة قاعدة بيانات أكسس كمكتبة مرجعية يقوم أكسس << بدمج >> قاعدة البيانات الرئيسية بقاعدة البيانات المرجع لتصبح قاعدة بيانات واحدة.. > يمكن إضافة قاعدة بيانات أكسس كمكتبة مرجعية بجميع إمتدادتها المعروفة (mda,mdb,mde;accda,accdb,accde). > يمكن أيضاً أن تحتوي قاعدة البيانات على نماذج، تقارير، وحدات نمطية.. > يمكن تشغيل النماذج والتقارير بعد تغليفها بوظائف عامة. ** تجربة المثال.. * قمت بإنشاء قاعدة بيانات خالية من كل شيء إلا من ميكرو الإقلاع Autoexec، ووظيفة معززة للإقلاع تحتوي هي أيضا على وظيفة تقوم بفتح نموذج يحتوي على قائمة سرد بها أسماء النماذج في قاعدة بيانات المرجع. * قاعدة بيانات المرجع هي NorthWind 2007 * أضفت في هذه القاعدة وحدة نمطية أنشأت بها بعض الوظائف ومنها وظيفة إقلاع النموذج الذي سبق الإشارة إليه.. إليكم المثال Adding DataBase As Reference.zip
    1 point
  8. السلام عليكم ابا جودي انا اعتذر منك ، فالكود الذي اعطيتك اياه ، خلق خطأ آخر: If Len(strFileNames & "") = 0 والحل في هذا الكود ان شاء الله (السطر الاول من الكود ادناه) ، وبقية الكود موجود عندك اصلا: strFileNames = "" strFileNames = apiBrowseFiles("Select a File, OR Multiple Files", sFolder, , strFilter) ' user didn't select any file, s/he proceed cancel If UBound(strFileNames) = 0 Then 'No Path, Exit Sub End If جعفر
    1 point
  9. ما شاء الله تبارك الله اخوي سلمان هل هذه البرامج تم تصميمها على أكسس ؟
    1 point
  10. شكرا لك اخوي @حربي العنزي الله يجزيك كل خير
    1 point
  11. الف مبروك عليك اللقب وتستاهل كل خير يالطيب الله لايحرمنا من شخصك الكريم يارب
    1 point
  12. هذه اول مشاركة لي فى المنتدى وكنت اريد عمل برنامج لادارة بيانات العملاء لشركة سفريات هل هذا الطلب مسموح هنا لو بمقابل مادى
    1 point
  13. فعلا لا توجد علاقة فقد قمت بحذفها بعد الانتقال الى استخدام النص بدل الرقم يبدو أنك انشغلت بموضوع العلاقة عن الهدف من الموضوع لانشاء علاقة بين جدولين يجب أن يكون الحقل الذى سيتم ربط العلاقة به بكلا الجدولين متماثل بنوع البيانات فنربط الأرقام بالأرقام - والنصوص بالنصوص لا علاقة لـ combobox بالعلاقات - سأراجع ما قلته مرة أخرى لعلى أنا السبب بهذه - الخربطة - فعلا أنا سبب - الخربطة آسف فأنا أتكلم بالصعيدى - للتوضيح هذا المقطع خاص بالمثال القديم الذى تم استخدام الأرقام به بدل النص: أما هذا المقطع فخاص بالمثال الجديد والذى تم استبدال النص بدل الرقم به: وقصدت بالملاحظات السابقة الدقة بكتابة النص - أن يكون متشابه تماما دون اختلاف. ولا أنا
    1 point
  14. استاذ @سلمان الشهراني تحيبة طيبة ان شاء الله انا ممكن اساعد حضرتك ممكن تراسلنى على الخاص
    1 point
  15. اليك قاعدة بياناتك بعد اضافة الكود الاعلاه Database9.zip
    1 point
  16. عفوا أخي أوس انا لا احبذ On Error Resume Next ، لانه لا يخبرنا عن الاخطاء التي تحدث في الكود ، واستعمالي لها يكون في نطاق ضيق الطريقة الصحيحة للتعامل مع هذه المشكله هي: جعفر
    1 point
  17. السلام عليكم انا اضيف لك سبب ، بالاضافة الى سبب أخوي أبو إبراهيم: برنامج مسقط التقارير يُعتبر برنامج قائم بحد ذاته ، و إحمل برامجك داخل قاعدة بياناتك والذي كذلك يُعتبر برنامج قائم بحد ذاته ، اي يمكن استعمالهم بدون عملية الدمج (طبعا برنامج مسقط التقارير يحتاج الي تعديل ليعمل بمفرده (والنسخة التالية ستكون كذلك ان شاء الله) ، ولكن البرنامج الآخر فيمكن ان يعمل بطريقة مستقله) ، انت لست بحاجة الى نقل الكائنات الى برنامجك ، فالبرنامج يستطيع ان يقوم بالعمل وهو برنامج مستقل ، بمجرد ان تناديه برمجيا ، ولكن انظر المشكلة التي صادفة omarahmed1424 لما اراد دمج البرنامج في برنامجه: ولاحظ جوابي عليه: جعفر
    1 point
  18. حسب فهمي لطلبك هذا اضف هذا الى كودك Me.myPath = Me.myPath & "\" & ID_N & " _ " & nowaseka & " _ " & Format(dawared, "yyyy - mm - dd") اي سيكون الكود كالتالي Private Sub btn_mkdir_Click() Dim fs As Object Dim a As Object Set fs = CreateObject("Scripting.FileSystemObject") If fs.FolderExists(Me.myPath & "\" & ID_N & " _ " & nowaseka & " _ " & Format(dawared, "yyyy - mm - dd")) = True Then MsgBox "المجلد موجود سابقاً" Else Set a = fs.Createfolder(Me.myPath & "\" & ID_N & " _ " & nowaseka & " _ " & Format(dawared, "yyyy - mm - dd")) Me.myPath = Me.myPath & "\" & ID_N & " _ " & nowaseka & " _ " & Format(dawared, "yyyy - mm - dd") MsgBox "تم عمل المجلد بنجاح" End If End Sub والله يعلم
    1 point
  19. الشكر والحمد لله سبحانه وتعالى وحده فهو الذى تتم بنعمته الصالحات
    1 point
  20. استاذى الجليل @jjafferr الكود بتاعى انا شغال بيه اللى وضعته يقوم بعمل المجلدات دفعه واحدة مجلدا داخل مجلدا داخل مجلد
    1 point
  21. همممم هذا علم وتخصص كذلك كلام سليم 100% ، شكرا على الملاحظة أخوي رمهان جعفر
    1 point
  22. وعليكم السلام أختي اعملي استعلام ليكون مصدر التقرير ، سواء بجدول او اكثر ، وعلى اساسه سيكون الذي تطلبيه اسهل في العمل جعفر
    1 point
  23. تم رفع هذا الكود فى مشاركة منفصله حتى لا ننسى هذه المشاركة تم ارفاق كود الحل من الفاضل ا / عبدالله باقشير Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Sh.Cells.Interior.ColorIndex = xlNone If Target.Cells.Count > 1 Then GoTo 1 For R = 2 To 6 With Cells(Target.Row, R).Interior .ColorIndex = 8 .Pattern = xlSolid End With Next 1 End Sub مرفق الملف و الشرح __________________.rar و مشاركه اخرى من أ / ابو اسامة العينبوسي مرفق الملف و الشرح HILITE.ra و مشاركه اخرى من أ / h63 مرفق الملف و الشرح New_Folder.rar و لا تنسونا من صالح الدعاء تحياتى
    1 point
  24. حياك الله الظاهر ان العلم بنفسه لا ينفع ، لذا كان لازم أحضّر الشيوخ بالبخور علشان يخبروني هذه المعلومة اللي ما كانت موجودة هذا الكود الجديد Forms!test1!ID.SetFocus [Forms]![test1]![مربع_تحرير_وسرد15] = Me.ID DoCmd.FindRecord [Forms]![test1]![مربع_تحرير_وسرد15] Me.Requery ولكني عملت تغيير في استعلام النموذج الفرعي ، وكذلك استعلام مربع التحرير والسرد. جعفر 620.testx.mdb.zip
    1 point
  25. جرب هذين الكودين الاول يقوم باخفاء الاعمدة والثاني حذفها اختر ما تريد Sub hid_col() Dim my_rg As Range Set my_rg = Range("a2").CurrentRegion my_rg.Columns.Hidden = False x = my_rg.Rows.Count Set my_rg = Range("a2").CurrentRegion.Offset(1).Resize(x - 1).Resize(1) For i = 1 To my_rg.Count If Application.CountIf(my_rg.Range(Cells(1), Cells(i)), my_rg.Cells(i)) > 1 Then my_rg.Cells(i).EntireColumn.Hidden = True End If Next Set my_rg = Nothing End Sub '============================================================================= Sub del_col() Dim my_rg As Range Set my_rg = Range("a2").CurrentRegion my_rg.Columns.Hidden = False x = my_rg.Rows.Count Set my_rg = Range("a2").CurrentRegion.Offset(1).Resize(x - 1).Resize(1) For i = my_rg.Count To 1 Step -1 If Application.CountIf(my_rg.Range(Cells(1), Cells(i)), my_rg.Cells(i)) > 1 Then my_rg.Cells(i).EntireColumn.Delete End If Next Set my_rg = Nothing End Sub
    1 point
  26. تم رفع هذا الكود فى مشاركة منفصله حتى لا ننسى هذه المشاركة نموذج أدخال بيانات عميل و فاتوره مشاركة من الفاضل أ / هادى محمد المامون سالم مرفق الملف و الشرح Invoice.rar و لا تنسونا من صالح الدعاء تحياتى
    1 point
  27. كانت Northwind مثالا فقط، ضع أي قاعدة بيانات تريد وبقدر ما تشاء.. الجميل هنا أنه بإمكانك دمج أكثر من قاعدة بيانات واحدة لتعمل جميعها وبشكل مدمج في قاعدة بيانات واحدة... في الحقيقة لم أجرب ذلك.. لكن لا أعتقد أن لذلك أثر على قاعدة البيانات.. نظم (32،64) لها أثر على بيئة التشغيل فقط.
    1 point
  28. عليكم السلام تم التعديل على النموذج الفرعي ومطلوبك تجده في استعلام1 يغنيك عن الاضافة الى الجداول وكما تعلم الاستعلام هو جدول ويزيد عليه ايضا Database122.rar
    1 point
  29. علشان حدث التنشيط يشتغل ممكن تضغط على أي شيت تاني وبعدين تضغط على الشيت المطلوب وزيادة في التأكيد ممكن تحط الكود في حدث فتح المصنف Private Sub Workbook_Open() وإذا كان الملف أكثر من شيت يجب تحديد شيت العمل المطلوب With Worksheets("Sheet1") ووضع الكود هنا ثم إنهاء التعامل مع الشيت المطلوب End With
    1 point
  30. أخى الكريم الكود راح يكون هكذا ولاحظ التغيير فيه مع تغيير أماكن خلايا الشرط أصبحت ( T9 و U9 ) وتغيير النطاق بشيت الاستعلام مرفق مثال توضيحي على الملف الخاص بكم Sub Work() Sheet2.Range("S13:V5000").ClearContents r = 13 For i = 11 To Sheet1.Range("E10000").End(xlUp).Row + 1 If Sheet2.Range("T9").Value = "" Then GoTo a If Sheet2.Range("T9").Value <= Sheet1.Cells(i, "E") Then a: If Sheet2.Range("U9").Value = "" Then GoTo a1 If Sheet2.Range("U9").Value >= Sheet1.Cells(i, "E") Then a1: Sheet2.Cells(r, 19) = Sheet1.Cells(i, 2) Sheet2.Cells(r, 20) = Sheet1.Cells(i, 3) Sheet2.Cells(r, 21) = Sheet1.Cells(i, 4) Sheet2.Cells(r, 22) = Sheet1.Cells(i, 5) r = r + 1 End If End If Next i End Sub جلب بيانات بين تاريخين_2.rar
    1 point
  31. او Private Sub namex_DblClick(Cancel As Integer) DoCmd.GoToRecord , Me.Parent.Name, acGoTo, Me.CurrentRecord End Sub هنا لم يعد ل bookmark فائده استاذ جعفر فهي ضمنيا مع recordset تقبلو تحياتي ممكن توضح اكثر
    1 point
  32. مبارك استاذ شيفان ماشاء الله عليك قفزات في مستوى المشاركات وبشكل سريع نتمنى لك التوفيق
    1 point
  33. اخي سامي ارجو ان يفيدك هذا الموضوع https://www.officena.net/ib/topic/74957-مشكلة-بطء-عرض-التقرير/?do=findComment&comment=481182 تحياتي
    1 point
  34. أخى الكريم بداية يرجى ارفاق ملف للعمل عليه ثانيا للتغيير فى عمود أو مجموعة داخل عمود من خلال فورم لا أعتقد أنك ستجد حل لذلك لأنه بإفتراض أمامك شيت الاكسل هل تستطيع أن تغير فى كامل العمود مرة واحده ولا يتم التغيير فى خلية خلية ثالثا وهذه نقطه مهمة ما فهمته من طلبك الثاني أن هناك مجموعة موقوف راتبهم ترغب فى استدعاء بياناتهم مثلا لكى يتم التعديل لماذا لم تطلب ذلك من الأول حفاظا على وقت وجهد الآخرين برجاء التوضيح وارفاق ملف للعمل عليه
    1 point
  35. تفضل التعديل المناسب بمجرد كتابة تاريخ الانفكاك تختفي الروضة ، لتحدد روضته الجديدة وتاريخ المباشرة ايضا يمكنك عمل تقرير بمسيرة الموظف السابقة وتنقلاته الملاكات2.rar
    1 point
  36. جزاك الله خيرا أخي زيزو العجوز الكود صحيح للغرض المطلوب ويمكنك وضع الكود السابق في حدث تنشيط الشيت Private Sub Worksheet_Activate() Application.ScreenUpdating = False Dim dat As Byte dat = Month(Now) If dat = 1 Then Columns("DI:DE").Hidden = False Else Columns("DI:DE").Hidden = True End If If dat = 6 Then Columns("DK").Hidden = False Else Columns("DK").Hidden = True End If If dat = 7 Then Columns("DK").Hidden = False Else Columns("DK").Hidden = True End If Application.ScreenUpdating = True End Sub كما هو مطلوب
    1 point
  37. الاستاذ شفان يستحق لقب الترقيه و اكثر ان وجد نظرا لمجهوده الكبير في المنتدى ومشاركاته الفعاله الدائمه ومساهمته في التواصل مع الزملاء .. وفقك الله وجزاك الله خيرا
    1 point
  38. ألف مبروك استادي القدير Shivan Rekany كم انت متواضع وو ألف ميروك على الترقية ,,,,,,,,,,,, كما قلت في مدخلتك لا يزال المرء عالماً ما دام في طلب العلم ، فإذا ظن أنه قد علم فقد بدأ جهله
    1 point
  39. بسم الله ما شاء الله وفقك الله لكل خير أستاذنا وزادك من فضله ومن نجاح لنجاح بإذن الله
    1 point
  40. وعليكم السلام تفضل ضع الكود التالي على حدث "النقر المزدوج" على اي حقل في النموذج الفرعي DoCmd.SearchForRecord acDataForm, "test1", acFirst, "[id]=" & Me.ID او Forms!test1!ID.SetFocus DoCmd.FindRecord Me.ID او Me.Parent.Recordset.FindFirst "[ID] = " & Me.ID Me.Parent.Bookmark = Me.Parent.Recordset.Bookmark او Forms!test1.Recordset.FindFirst "[ID] = " & Me.ID Forms!test1.Bookmark = Forms!test1.Recordset.Bookmark جعفر
    1 point
  41. بسم الله ما شاء الله 1000 مليون مبارك عليكم الترقية ، استاذى العزيز تستحقها عن جدارة الى الامام دوما
    1 point
  42. الف مبروك استاذي القدير وتستاهل والله واكثر
    1 point
  43. السلام عليكم ورحمة الله ضع هذا الكود فى حدث الصفحة Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.ScreenUpdating = False Dim dat As Byte dat = Month(Now) If dat = 1 Then Columns("DI:DE").Hidden = False Else Columns("DI:DE").Hidden = True End If If dat = 6 Then Columns("DK").Hidden = False Else Columns("DK").Hidden = True End If If dat = 7 Then Columns("DK").Hidden = False Else Columns("DK").Hidden = True End If Application.ScreenUpdating = True End Sub
    1 point
  44. 1000 مبروك أستاذنا المحترم // شيفان // تستاهل كل خير ...
    1 point
  45. الف مبروك اخ شفان ... انطلاقة قوية متوازنة
    1 point
  46. شكرا لكم جميعا ان شاء الله ان نقدر نقدم مابامكاننا للجميع و ان شاء الله ان نقدر ننطي حق هذه اللقب شكرا لك @ابو زاهر @wael_rafat @sandanet @شامل2
    1 point
  47. أخي رمهان إحنا نستخدم أكسس ، ونحاول نطوّعه لما نريد ، وخاصية حمل برامج في الاكسس عن طريق Blob لا يعرف عنها الكثير الجميع يتفق معاك ان الاكسس (احد برامج المايكروسوفت) ليس افضل برنامج ، ولكن هذا ليس مكان مناقشة هذا الموضوع هنا شرحت السبب: . والآن الى شرح "فبدل ان اعمل هذه الجداول المؤقته داخل قاعدة بياناتي ، ويكبر حجمها ": بعض الاوقات نضطر الى عمل جدول/جداول مؤقته داخل برنامجنا ، وعملها ، هو تخزين بيانات ، ثم حذفها ، بحيث ان الحاجة لهذه الجداول تنتهي بقفل البرنامج (غالبا) ، وبهذه الطريقة يكبر حجم البرنامج ، لأن اكسس لا يُعيد حجم البرنامج الى اصله عند حذف السجلات ، وانما نضطر الى عمل ضغط واصلاح لأعادة البرنامج الى حجمه الاصل. قبل حوالي اسبوعين ، واثناء التجارب على احد البرامج وكان حجم جزء الجداول BE حوالي 40MB ، عملت جدول مؤقت وبدأت اشتغل عليه بتجاربي ، وعندما انتهيت ، حجم البرنامج وصل الى حوالي 750MB ، فطبعا استعملت زر الضغط والاصلاح ، ورجع الى حجمه الطبيعي طيب لو اني كان عندي جدول مؤقت خارج برنامجي ، وعملت له رابط في برنامجي ، واشتغلت عليه ، ولما انتهي من عملي ، احذف الجدول المؤقت (طبعا مع قاعدة البيانات اللي الجدول فيها) ، مو يكون افضل لي ؟ او يعني الافضل ان اجعل الضغط والاصلاح تلقائي عند اغلاق البرنامج ؟ نعم استطيع ان اعمل هذا الجدول المؤقت الخارجي برمجيا ، ولا حاجة لإرفاقه ، ولكن في حالتي ، كنا شخصين نشتغل على هذا البرنامج ، وابن عمي كانت مسؤليته عمل الجداول المؤقته ، فلما خلص عمله ، ارفقت شغله بالكامل جعفر
    1 point
×
×
  • اضف...

Important Information