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

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

  1. Hamdi Edlbi-khalf

    Hamdi Edlbi-khalf

    الخبراء


    • نقاط

      13

    • Posts

      993


  2. kanory

    kanory

    الخبراء


    • نقاط

      11

    • Posts

      2331


  3. ابو ياسين المشولي

    • نقاط

      8

    • Posts

      1755


  4. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      8

    • Posts

      8723


Popular Content

Showing content with the highest reputation on 10/06/18 in all areas

  1. نعم لائحة أسماء دون تكرار ومرتبة أبجدياً بدون ماكرو ولا فلتر فقط (معادلات) اللائحة تتجاهل الفراغات و الارقام (فقط نصوص) لرؤية المعادلات يكفي رفع الحماية عن الشيت/ بدون كلمة مرور ترتيب ابجدي.xlsx
    2 points
  2. يسألونك دائماً عن ملف الصادر والوارد فكان هذا الملف الذي ارجو ان يستفيد منه اكبر عدد من المستخدمين فقط املأ الجدول بالبيانات اللازمة و حدد صفحة الترحيل واضغط على الزر من مميزاته: لا يسمح لك بتكرار رقم الصادر او الوارد لا يسمح لك بترحيل بيانات غير مكتملة Sader_Wared.xlsm
    2 points
  3. اخي الكريم انظر للصورة ثم الشرح هو أن الكود المصدري مع الكود الوسيط يتم حفظهما معاً ضمن ملف قاعدة بيانات الأكسس ذي اللاحقة mdb (أو accdb). بعد أن تكتب الكود المصدري بلغة VBA، يتم تجميعه compiled إلى كود وسيط يسمىp-code. عندما يعمل تطبيق قاعدة البيانات، ويستخدم أكواد VBA، تتم ترجمة هذا الكود الوسيط وتنفيذ الكود بواسطة الأكسس، ولذلك تحتاج إلى وجود الأكسس دوماً (أو على الأقل إلى وجود المكونات التي تقوم بالترجمة). السؤال الذي يطرح نفسه هنا هو التالي: مع ملاحظة أن الكود المصدري بلغة VBA قد تمت ترجمته إلى الكود الوسيط p-code ، ألا يعني هذا أن بإمكاننا الآن أن نتخلص من الكود المصدري، ونحتفظ بالكود الوسيط، ولن نخسر شيئاً؟ الجواب: بلى، بإمكاننا أن نتخلص من الكود المصدري، لكن هذا يعني أننا لن نستطيع القيام بأي تعديلات في الكود لاحقاً. في الحقيقة، الأكسس يوفر لنا هذه الخاصية من أجل حماية الكود المصدري من التعديل، وتقليص حجم ملف قاعدة البيانات. يتم ذلك عبر تحويل كل الأكواد المصدرية في الملف إلى كود وسيط p-code، ثم التخلص من الكود المصدري، وضغط الملف بعدها وتحويل الامتداد إلى mde (أو accde) بدلاً من mdb. ومن هنا تعرف السر في أنك لا تستطيع الاطلاع على أكواد ملفات mde، مع أن التطبيق يعمل بشكل كامل.
    2 points
  4. هل جربت ملفى المرفق بالاعلا . كما ذكر الاخ @Shivan Rekany تمت الاجابه على جميع تساؤلاتك السابقة
    2 points
  5. السلام عليكم ورحمة الله وبركاته جمعة مباركة دالة لاضافة صور الى نموذج معين من فولدر المطلوب فيها اسم الصورة واسم الشكل التلقائي الذي تريد اظهار الصورة فيه ملاحظة مهمة : عند تعيين الخلية اللي فيها اسم الصورة يجب ان يكون ملحوق باسم الورقة مثلا =kh_AddPicture(Sheet1!H2;"myimg1") كود الدالة : Option Explicit Option Compare Text '''اسم مجلد الصور Private Const kh_pic As String = "MyImeg" Function kh_AddPicture(MyRng As Range, iName As String) Dim MyFile As String On Error GoTo 1 MyRng.Worksheet.Shapes(iName).Fill.Solid MyFile = ThisWorkbook.Path & "\" & kh_pic & "\" MyFile = MyFile & "\" & CStr(MyRng) & ".jpg" If Not Dir(MyFile, vbDirectory) = vbNullString Then MyRng.Worksheet.Shapes(iName).Fill.UserPicture MyFile End If 1 kh_AddPicture = "" End Function هو طلب لاحدهم وجعلته هنا لتعم الفائدة المرفق اكسل 2003 اكسل 2007 دالة لاضافة صور الى نموذج معين من فولدر.rar =================================================== ملحوظة ارجوا من الذين حملوا المرفق هذا يغيروا كود الدالة الى الكود المعدل ادناه =================================================== تم تعديل الدالة لتشمل صيغ الصور التي تريدها كود الدالة الجديد Option Explicit Option Compare Text '============================================= '============================================= ' اسم مجلد الصور ' اذا كان مجلد الصور في نفس مجلد ملف الاكسل ' اكتب اسمه فقط ' والا اكتب المسار كاملا ' "D:\MyDocument\MyFunction\photo" Private Const kh_pic As String = "MyImeg" '============================================= ' امكانية تحرير اي نوع من الصور لديك ادناه Private Const MyTyp As String = ".jpg,.bmp,.gif,.png,.tif" '============================================= '============================================= Function kh_AddPicture(MyRng As Range, iName As String) Dim Tp Dim MyShap As Shape Dim MyFile As String, MyPath As String Dim ibo As Boolean '----------------------------------------- On Error Resume Next Set MyShap = MyRng.Worksheet.Shapes(iName) If iName = "" Or Err Then Err.Clear: GoTo 1 '----------------------------------------- MyShap.Fill.Solid If Not InStr(kh_pic, ":") Then MyPath = ThisWorkbook.Path MyFile = MyPath & "\" & kh_pic & "\" & CStr(MyRng) '----------------------------------------- For Each Tp In Split(MyTyp, ",") If Not Dir(MyFile & Trim(Tp), vbDirectory) = vbNullString Then MyShap.Fill.UserPicture MyFile & Trim(Tp) ibo = True Exit For End If Next '----------------------------------------- 1: Set MyShap = Nothing kh_AddPicture = ibo End Function المرفق اكسل 2003/2007 دالة لاضافة صور من مجلد الى شكل تلقائي.rar
    1 point
  6. أستاذى @ابو ياسين المشولي جت فى دماغى بس قولت مش هتتنقل و مجربتهاش جزاك الله خيرا
    1 point
  7. رائع !!! أستاذ @kanory إذا فالأكسس يقرأ الخصائص التي نعدّلها في التصميم ضمن التقرير و النموذج على أنها أوامر نكتبها بالفيجوال بيزيك و هذا ينطبق على التنسيقات و الماكروز ... و كأنه بإغلاق وضع التصميم قد أغلق نافذة موازية لنافذة محرر الأوامر .. لا تزال لدي بعض التساؤلات لكن السؤال الأساسي قد حصل على الإجابة .
    1 point
  8. تم تصحيح الخطا الاكسيل "أنثى " المشكل في الهمزة فقط شكرا لك
    1 point
  9. اخي العزيز ابو اسد بعد اذن الاخوة الكرام لماذا تتعب نفسك باكواد الازرار اذاكنت تريد اجبار المستخدم اكمال كتابة جميع الحقول فأستخدم هذا الكد وضعه عند الخروج لجميع مربعات النص او التحرير والسرد Then ([اسم مربع النص]) IF ISNULL ("لا تترك الحقل فارغاً") MsgBox DoCmd.CancelEvent Else End If
    1 point
  10. أسمح لي أستاذنا @ابو ياسين المشولي برفع الملف النهائي حتى يستفيد منه الأعضاء لأنه مهم جداً واتمنى أن يتم تثبيت الموضوع الملف عبارة عن: فورم بحث بالأكواد عن صنف عبر ثلاثة أحتمالات أما حقلين تاريخ أو حقل نص أو قائمة منسدلة يتم عرض النتائج من خلال فورم فرعي ويمكن عرضة كتقرير بالأكواد في حالة المعاينة قبل الطباعة الملف بالمرفقات: SearchRpt(6).accdb
    1 point
  11. العفو منك أستاذنا @ابو ياسين المشولي أن أخطائت في توضيح طلبي أحياناً أكون منهمك في التعديل والبرمجة .. مما يجلني لأ أنتبة لما أكتب في الطلب.. أكرر أعتذاري لك فعلاً هاذ هو المطلوووووووووووووب شكرا لك أستاذنا الغالي أسائل الله أن يجعل هذا الجهد الذي بذلته ذخرا لك يوم القيامة ورفعا لك في درجات الجنة وأن يرزقك ووالديك رضاه والجنة الفردوس الأعلى بارك الله فيك .. وجزاك الله خيرا
    1 point
  12. أهلاً ... و لكن ما السبب وراء هذه الحصانة التي يتمتع بها الملف المحول إليه ؟ حيث لا يمكن فك تشفيره على الإطلاق .. بحثت و لم أجد أية فكرة عن ذلك .
    1 point
  13. اتفضل On Error GoTo Err_أمر24_Click If MsgBox(" هل انت متأكد ؟", _ vbCritical + vbYesNo, _ "تنبيه") = vbNo Then Exit Sub Else DoCmd.GoToRecord , , acNewRec Me.البرنامج.SetFocus End If Exit_أمر24_Click: Exit Sub Err_أمر24_Click: MsgBox Err.Description Resume Exit_أمر24_Click
    1 point
  14. الله يسامحك كان من اول كنا سوينها لكن اول كان كلامك غير والان غير اتفضل احذف الكود الاول كامل اللي هو في طباعه التقرير واستبدله بهذا واخبرتني بالنتيجه عملت لك كود ولا اروع نفس كود البحث او في الاحرى هو نفسه اللي في البحث On Error Resume Next Dim aboyaseen As String Dim varFilter As Variant varFilter = Null If Not IsNull(Me.n1) Then varFilter = "[ItemName] LIKE '*" & [Forms]![Sersh_F]![n1] & "*'" DoCmd.OpenReport "Sersh_rpt", acViewReport, , aboyaseen End If ' كود البحث بين تاريخين If Not IsNull(Me.Date1) Or IsNull(Me.Date2) Then aboyaseen = (varFilter + " AND ") & "[datemod] Between [Forms]![Sersh_F]![Date1] And [Forms]![Sersh_F]![Date2]" DoCmd.OpenReport "Sersh_rpt", acViewReport, , aboyaseen End If If Not IsNull(Me.k1) Then varFilter = "[ItemName] LIKE '*" & [Forms]![Sersh_F]![n1] & "*'" DoCmd.OpenReport "Sersh_rpt", acViewReport, , aboyaseen End If With Me.Items_Sub.Form If Not IsNull(varFilter) Then .DataEntry = False .Filter = varFilter .FilterOn = True Else .FilterOn = False End If .Requery End With
    1 point
  15. السلام عليكم المثال المرفق يشتمل على جداول غير صالحة : فنيا / برمجيا / تصميما ارجوا اخي ان تتقبل النقد بصدر رحب انصحك بان تدرس الخطوات الاولى لانشاء قاعدة بيانات الخطوة الاولى : الجداول انظر في المواضيع المثبتة في اعلى الصفحة .. مليئة بالدروس المرئية والمسموعة اسأل الله لك التوفيق .
    1 point
  16. شكرا لك استاذي العزيز تعبتك معي
    1 point
  17. اتفضل DoCmd.OpenReport "Sersh_rpt", acViewReport, , Left(Nz([datemod], 0), 50) & "[datemod] Between date1 And date2"
    1 point
  18. هناك مشكلة واحدة وهو صناديق كل الاصناف ليس لديهم فقط 8 دزينة ( علبة ) اي هناك احتمال رقم اكبر او اقل و كل دزينة ( علبة ) احتما يكون فيها اكثر او اقل من 12 قطعة لكن اذا رأيت هذا الموضوع مهمة و سأل عنه راح اعمل مثال للتجربة و اشرح عن كيفية العمل باذن الله
    1 point
  19. تم الجواب على كل النقاط الاعلاه من قبل استاذ @kanory ويتم عمل الفولدر و التقرير في مجلد E وتقدر تتغيره الى اي مكان تريد
    1 point
  20. السلام عليكم .... إليك هذا الكود Private Sub FORM_subform_Enter() Me.FORM_subform.Form.AllowDeletions = False End Sub ضفعه في النموذج الفرعي في حدث ENTER الشكر لموقع BYTES
    1 point
  21. من الواضح أنه ليس لديك نموذج قبل أن تضيف الاستعلام مباشرة إلى النموذج الرئيسي وهنا المشكلة سأحاول أن أجد حلاً
    1 point
  22. مرحياً أرجو أن يكون هذا المطلوب ..... altered2 - Copy.mdb
    1 point
  23. هذه صورة من جهازي .... ليس هناك مشكلة .... ربما اشكالك في برنامج قاري الـ pdf لديك .
    1 point
  24. 1 point
  25. شكرا لك يا غالي الان يعمل ممتاز واضفت علية ايضا رفرفش اضافي في حالة تحقق الشرط وهو امر استفدت منك في موضوع اخر Private Sub QSold_AfterUpdate() If IsNull(Me.QSold) Then Me.Refresh ElseIf IsNull(Me.itemName) Then MsgBox " الحقل فاضي" Me.QSold = "" Undo Me.Refresh ElseIf [QSold] >= [QAvilable] Then MsgBox " الكمية االمتاحة لا تكفي" Me.Refresh Else Me.Refresh End If End Sub
    1 point
  26. اتفضل If IsNull(Me.QSold) Then Me.Refresh ElseIf IsNull(Me.itemName) Then MsgBox " الحقل فاضي" Me.QSold = "" ElseIf [QSold] >= [QAvilable] Then MsgBox " الكمية المتاحة لا تكفي" Me.Refresh End If
    1 point
  27. ابو ياسين اعتقد انك تقصد كذا If IsNull(Me.QSold) or [QSold] > [QAvilable] Then undo MsgBox " الكمية المتاحة لا تكفي" Me.Refresh end if لانه اصغر او يساوي يجب ان يعمل
    1 point
  28. الف شكر على هتمام سيادتك انا خلصت حل المشكلة والحمد لله كنت محتاج ماكرو طباعة صفحة الايصلات قي ملف اكسيل كم صفحة العملاء ارجو ارسال كود الماكرو مع الشكر
    1 point
  29. هذه المعادلة في G11 =IF(COUNTIF($E$11:E11,E11)>1,"",SUMPRODUCT(($A$2:$A$8=E11)*($B$2:$B$8)))
    1 point
  30. 1 point
  31. السلام عليكم ورحمة الله وبركاته بسم الله الرحمن الرحيم الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين الله يزيدك من علمه ويجزيك وجميع المساهمين خير الجزاء اللهم باسمك الغفار اغفر لهم يارب العرش العظيم والسلام عليكم ورحمة الله وبركاته
    1 point
  32. ملاحظة ضع الأمر في النموذج الفرعي و لكن أثناء عرضه مستقلاً و ليس ضمن إطار النموذج الرئيسي و بإذن الله سيعمل ... مع العلم أنك لو منعت الحذف في النموذج الفرعي من خصائصه أثناء عرضه مستقلاً فذلك كاف و لا تحتاج إلى تعطيل مفتاح ديليت .. وحبذا لو غيرت عنوان السؤال إلى ما يدل عليه ... مما سيساعد الباحث على الوصول إليه
    1 point
  33. أخي العزيز جرب هذا ... Private Sub YOURFIELD_KeyDown(KeyCode As Integer, Shift As Integer)' يمنع حذف محتويات حقل If KeyCode = vbKeyDelete Then KeyCode = 0 End If End Sub ============================= Private Sub YOURFORM_KeyDown(KeyCode As Integer, Shift As Integer)' يمنع حذف السجلات If KeyCode = vbKeyDelete Then KeyCode = 0 End If End Sub من الصدف أنني أبحث عن هذا الموضوع منذ بضعة أيام .... و منذ بضع دقائق وجدت الحل !!!! أخي الفاضل لو نجح لديك الأمر فدعوة لوالدي .
    1 point
  34. جزاك الله الف خير استاذ ابو زاهر
    1 point
  35. Public Function ConvertToGergDate(HijriDate As Date,F As Integer) Calendar=vbGerg Select Case F Case 0 ConvertToGergDate=Format(HijriDate,"yyyy/mm/dd") Case 2 ConvertToGergDate=Format(HijriDate,"mmmm") End Select End Function استخدم هذه الوظيفة في رأس الاستعلام ومرر عليها حقل التاريخ الهجري في المحدد الأول والقيمة صفر في المحدد الثاني لإظهار التاريخ الميلادي بالكامل... وبنفس الطريقة مع وضع الرقم واحد في المحدد الثاني لإظهار اسم الشهر بالكامل... للأهمية.. أسماء الأشهر لا تظهر بالعربي إلا في أكسس بالواجهة العربية.. وعليك كمطور قواعد بيانات أن تحطاط لهذا الأمر
    1 point
  36. :: ماشاء الله اخ شفان .. نعم هذا المطلوب شكرا لك على ذلك . :: بالنسبة لي اعتقد ان هذا الحل يساعد كثيرا في حل موضوع تعبئة المواد وكذلك يخفف من حجم البرنامج والاكواد ... وبالتالي تكون قاعدة البيانات خفيفة وسريعة الفتح .... احسنت .🙂
    1 point
  37. لم افهم ماذا تعني بــــ يجب ان يتساوى ارقام العمودين حمل جدول بالنتائج المتوقعة
    1 point
  38. السلام عليكم الارقام مكررة يجب ان يتساوى ارقام العمودين المصنف1.rar
    1 point
  39. سؤالك غير مفهوم ..... هل تريد في النموذج الفرعي فقط 5 سجلات أم ماذا تريد بالضبط .... ماذا تقصد بخمس سنوات ... بارك الله فيك
    1 point
  40. على الرحب والسعه الكود بيكون بهذا الشكل بالنموذج DoCmd.OpenReport "Sersh_rpt", acViewReport, , "Left(Nz([ItemName],0),50) Like '*' & [Forms]![Sersh_F]![n1] & '*'"
    1 point
  41. بعد اذن استاذى سليم هناك اربعة طرق داخل الملف لهذا الغرض كتابة ارقام التليفون بالصفر من اليسار.xlsx
    1 point
  42. اهلا بك فى المنتدى الكريم بارك الله فيك وجزاك الله كل خير
    1 point
  43. بالنسبة للمطلوب الثاني لماذا لا يتم سحب البيانات التي تريدها من الجدول العام للطلاب أقصد جداول الطلاب أظن موقع نور يقوم بتصدير بيانات جداول الطلاب
    1 point
  44. جزاك الله خيرا أخي الكريم وهذا برنامج جامع للفكرتين ( جلب اسماء الطابعات + تحديد الطابة الافتراضية ) ولعلي أحظى بدعوة لي ولوالدي ... تحديد واختيار الطابعة الافتراضية - تغيير الطابعة الافتراضية.accdb
    1 point
  45. استخدم هذا الكود قبل تشغيل الاستعلام DoCmd.RunCommand acCmdSaveRecord
    1 point
  46. 1 point
×
×
  • اضف...

Important Information