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

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

  1. kha9009lid

    kha9009lid

    الخبراء


    • نقاط

      7

    • Posts

      1,347


  2. أبو عبدالله الحلوانى
  3. حسين مامون

    حسين مامون

    الخبراء


    • نقاط

      5

    • Posts

      1,284


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      5

    • Posts

      8,723


Popular Content

Showing content with the highest reputation on 20 فبر, 2021 in all areas

  1. تم تعديل الخطأ بسبب التعارض مع كود لاخينا صاحب السؤال بدون الحاجة الى اكواد عن طريق تعبير في التنسيق الشرطي الاجازات.accdb
    3 points
  2. وعليكم السلام-يمكنك استخدام هذه المعادلة =COUNTIF(A3:AC3,"ح")+COUNTIF(A3:AC3,"ج")+COUNTIF(A3:AC3,"ق") مجموع الأحرف1.xlsm
    3 points
  3. مع انه من الصعوبة معرفة المشكلة بدون مرفق ومشاركتي لا تغني عن مشاركة اخي واستاذي @أبو عبدالله الحلوانى الا ان مالفت نظري وجود اثنا عشر نموذج فرعي في النموذج الرئيسي واعتقد ان هناك بعض دوال الاكسس قد تغني عن هذا الكم الكبير من النماذج الفرعية فاذا كان الهدف من كل نموذج فرعي اضهار قيمة لحقل معين يمكن الاطلاع على مشاركة قيمه لاستاذنا @jjafferr والله الموفق
    2 points
  4. مشاركة مع أساتذتي الكرام أنا كذلك لا أستخدم العلاقات الا داخل الاستعلام أما عن الملاحظة: لماذا نوع المعهد مكتوب باللغة العربية اجعل تسميات الحقول جميعا باللغة الانكليزية واجعل التسمية باللغة العربية كيفما تشاء أقصد Name: property in English ===> Caption: property in Arabic هذا سيجنبك بعض المشاكل عند استخدام محرر الأكواد تمنياتي بالتوفيق
    2 points
  5. استعمل هذا الكود واكتفي بزر واحد فقط Sub RN() If Not Intersect(Columns(3), ActiveCell) Is Nothing Then If ActiveCell = "" Then Exit Sub ActiveCell.Offset(, 1) = Val(ActiveCell + 1) '======= ElseIf Not Intersect(Columns(5), ActiveCell) Is Nothing Then If ActiveCell = "" Then Exit Sub ActiveCell = "x" & ActiveCell ActiveCell.Offset(, 8) = "x" '======= ElseIf Not Intersect(Columns(8), ActiveCell) Is Nothing Then If ActiveCell = "" Then Exit Sub ActiveCell.Offset(, 1) = ActiveCell ActiveCell = "x" & ActiveCell '======= ElseIf Not Intersect(Columns(10), ActiveCell) Is Nothing Then If ActiveCell = "" Then Exit Sub ActiveCell.Offset(, 4) = "x" ActiveCell = "x" & ActiveCell End If End Sub الترحيل بالماكرو (1).xlsb
    2 points
  6. لم أفهم جيدا ما تقصد ولكن ربما تحتاج لصياغة المعادلات داخل مربع النص بالفورم الفرعي بشكل صحيح أو أنك تجمع حقل فارغ علي حقل ذي قيمة يمكنك استخدام الدالة NZ لتفادي تلك المشكلة =Nz(tx1)+nz(tx2)+nz(tx3) جرب هذا وان لم يتم حل مشكلتك حاول أن تقتص الجزء الذي به المشكلة وارفعه هنا ليستطيع اخوتك المساعدة تمنياتي بالتوفيق
    1 point
  7. استعمال N(J9) ضروري و ذلك لعدم ورود خطأ في حال كانت الخلية J9 تحتوي على Text وليس رقماً الصورة توضح ذلك
    1 point
  8. وهذا عندما يكون نفس المسار مافي داعي تكتب المسار فقط اسم البرنامج وكلمه المرور Dim Fso dim MyPath set fso=createObject("Scripting.fileSystemObject") Mypath=fso.GetAbsolutePathName(".") With Createobject("Access.Application") .AutomationSecurity = 1 .opencurrentdatabase mypath & CurrentDirectory & "\program name", , "Type here the passward" .usercontrol=True End with
    1 point
  9. الكود الاول في حدث Workbook_Open وهو يفعل كود test2 ثم يخفي الاكسيل ويظهر الفورم Private Sub Workbook_Open() test2 Application.Visible = False UserForm1.Show End Sub وهذه صورة الكود داخل محرر الاكواد وهذه الاكواد داخل الفورم Private Sub CommandButton1_Click() ThisWorkbook.Save Application.Quit End Sub Private Sub CommandButton2_Click() Unload Me Application.Visible = True Sheets(1).Activate End Sub صورة الفورم وهذا الكود في مديول Sub test2() Dim lr Dim x, m lr = Cells(Rows.Count, "d").End(3).Row For x = 3 To lr Dim DT1, DT2 If CDate(Cells(x, "e")) = Date Then Cells(x, "f").Value = "هذا الشيك حان موعده" Cells(x, "f").Interior.Color = 255 Else Cells(x, "f").Interior.Color = xlNone Cells(x, "f").Value = "" End If Next x وهذه صور للصفحة
    1 point
  10. kha9009lid شكرا استاذي الكريم هذا هو المطلوب بالفعل
    1 point
  11. أنت اذا تحتاج الحصول علي قيمة الاجمالي من الفورم الفرعي لتعرضها بالفورم الرئيسي جرب استخدام هذا الكود مع تعديل ما يلزم من مسميات وفقا لما هو لديك me.subformName.form!n1 ضع في مصدر مربع النص علي الفورم الرئيسي
    1 point
  12. تم تعديل المشاركة لوجود خطأ يؤدي الى عدم امكانية اضافة اجازة جديدة تحياتي
    1 point
  13. نعم ماكرو ولعلمك بالنسبة لي لم افهم اي شيء من ملفك ويجب توضيح جميع الاعمدة كيف يتم استخراج النتائج كما في الصورة لا يمكنني تتبع بياناتك واستنتاج كيف يتم استخراجها لان بياناتك كبيرة
    1 point
  14. تم تعديل الكود في حدث الحالي للنموذج Private Sub Form_Current() Me.TypBr.Locked = Me.Appro Me.DatRetIn.Locked = Me.Appro Me.DatBr.Locked = Me.Appro Me.Dour.Locked = Me.Appro Me.DatDay.Locked = Me.Appro Me.DatRet.Locked = Me.Appro End Sub الاجازات.rar
    1 point
  15. اذا كنت نريد النقريب ما بعد العدد الثالث يعد الفاصلة استعمل في العامود K هذه المعادلة =IF(N(J9)=0,"",ROUND(J9/4,2))
    1 point
  16. مجرد اقتراح من الممكن استخدام اسكربت كهذا لفتح البرنامج بدون رسائل الأمان وبدون الحاجة لتخفيض أمان الأكسس بالكلية الخطوات 1- تعديل اسم البرنامج داخل الاسكربت وتعديل كلمة المرور أو حذفها ان لم يكن للبرنامج كلمة مرور 2- نضع الاسكربت داخل الفولدر الحاوي للبرنامج وانشاء اختصار له علي سطح المكتب 3- نقوم بتشغيل البرنامج (البرنامج يعمل بأمان وأي ملف أكسس أخر يتم ايقافه باجراءات الأمان) RunProgram1.rar
    1 point
  17. على الرابط التالي تجد معلومات كثيرة https://www.officena.net/ib/topic/74860-إنشاء-دروس-vba-أكسس/
    1 point
  18. جرب الطريقة التالية New Microsoft Access Database.accdb
    1 point
  19. كان يجب رقع ملف للمعالجة لكن اليك هذا النموذج الذي يمنع التكرار في العامودين الأول والثاني (النظاق الأخضر) Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim x%, RG As Range x = Cells(Rows.Count, 1).End(3).Row Set RG = Range("A1:B" & x) Application.EnableEvents = False If Not Intersect(Target, RG) Is Nothing And _ Application.CountA(Range("A" & Target.Row).Resize(, 2)) = 2 Then RG.RemoveDuplicates Array(1, 2) End If Application.EnableEvents = True End Sub الملف مرفق No_dups.xlsm
    1 point
  20. بعد اذن الاخ رضوان في J9 هذه المعادلة =CHOOSE(((E9<>"")+(F9<>"")+(G9<>"")+(H9<>"")+(I9<>"")=5)+1,"",SUM(E9:I9)) في K9 هذه المعادلة =IF(N(J9)=0,"",CEILING(J9/4,0.1)) في N9 هذه المعادلة =IF(N(K9)>=5,"ينتقل","يكرر") الملف مرفق hicham_1.xlsx
    1 point
  21. السلام عليكم مشاركة مع استاذي العزيز sandanet في جدول الموظفين تحتاج حقل رقم المعهد فقط اما المنطقة والادارة فلا تحتاجها لان العلاقات بين جداول المنطقة والادارة والمهاهد تكفلت بذلك
    1 point
  22. الاستاذ ابو ابراهيم الغامدي الاستاذ ابو عبدالله الحلواني شكراً على مداخلتكم ونصائحكم الطيبة واود اوضح لكم ان طلبي لاداة تخفيض مستوى امان الاكسيس هي من اجل المستخدمين العاديين حيث اننا نطلب منهم ان يقوموا بنشغيل نظام شئون الموظفين في اجهزتهم ولكن تواجهنا هذه المشكلة بشكل متكرر فيضطر ان يذهب احد المختصين بادارة البرمجة اليهم لتخفيض مستوى امان الاكسيس يدويا من اعدادات الاكسيس وهذه الطريقة تحدث بشكل متكرر وغالباً لا يكون المختص بادارة البرمجة غير متواجد
    1 point
  23. أخي السلام عليكم إذا كنت ترغب الحل من واقع الاكسل فأنا اعطيك الحل في البداية لابد ان تعرف ان المتعلم لم يصل الى 5 درجات صحيحة الا من واقع التقريب الموجود في مدخلات الارقام لأن نتيجته 4.998 وهذا هو الرقم الصحيح له ولكنه اقرب الى 5 درجات بفارق 0.0002 ولكي اكون صادقا اعطيك حلان للمشكلة اما انه ينتقل بالنتيجة المقربة المتحصل عليها وذلك بتغيير النسبة المئوية للانتقال او التكرار او تغيير معدل الانتقال الى التقريب لأقرب عشرة وبالتالي سيكون من ضمن الذين سيكررو وانت ادرى بذلك تحياتي القرار (1).xlsx
    1 point
  24. والله مازلنا نتعلم منكم الأخلاق الكريمة أكثر من الأكسس جزاكم الله عنا خيرا وبارك في مساعيكم وجعل ما تقدمونه بموازين حسناتكم
    1 point
  25. شخصيا لا استخدم اي نوع من العلاقات بين الجداول وانما اعتمد على جمل sql والدوال التجميعية وبالاخص دالة dloopkup وهذا الامر يعطيك مرونة في التعامل مع الجداول بكل حرية
    1 point
  26. جزاك الله خيراً استاذ جعفر المشكلة كما يظهر بالرسالة حسب رقم الخطأ 1033 كانت بلغة الجهاز وتم تعديل اللغة وتمام لكن أصبحت تظهر الرسالة نفسها ولكن برقم خطأ مختلف هو 3073 وهو خاص بتحديث الاستعلام في الكود (بالمناسبة الكود خاص بك) كنت قد ارفقته لي منذ فترة في موضوع للارشفة .. جاري مراجعة الكود وبإذن الله احاول ان اصل لنتيجة تحياتى .. وإذا تم حلها سوف اذكر الطريقة هنا
    1 point
  27. جرب هذا الماكرو Option Explicit Sub test() Dim ro1%, Ro2%, x%, y%, i% Dim t# Dim f_rg As Range Set f_rg = Range("B2:b500"). _ Find("*", LookIn:=xlValues, lookat:=1) x = 4: y = 12 If Not f_rg Is Nothing Then ro1 = f_rg.Row: Ro2 = ro1 Do For i = x To y If Ro2 = 2 Then GoTo Again t = Val(Cells(Ro2, i)) Cells(Ro2, i) = _ IIf(t > 0, -t, Cells(Ro2, i)) Next i Again: Set f_rg = Range("B2:b500").FindNext(f_rg) Ro2 = f_rg.Row If ro1 = Ro2 Then Exit Do Loop End If End Sub الملف مرفق FoMaNsHeE.xlsm
    1 point
  28. بسم الله الرحمان الرحيم السلام عليكم اصدقائي قررت في الفترة الاخيرة اعتزال البرمجة بالاكسل و vba ولا اظن اني ساعود له بما اني كنت اعمل على بعض المشاريع بواسطة الاكسل و لاكن للاسف لم اجد الوقت الكافي لانهائها قررت ايضا طرح تلك المشاريع لربما لتستفيدون منها لذاى ساقوم في كل مرة يتاح لي الوقت فيها برفع مشروع او اثنين ان شاء الله كاول مشروع هذا برنامج مبيعات /كودبار/يعتمد ايضا القطعة و العلبة تقريبا انجز 80% منه لم يتبقى له سوى التقارير و بعض الاشياء الاخرى تحياتي للجميع Pr Commercial.rar
    1 point
  29. السلام عليكم أخي العزيز محمد أيمن أحسنت كثيرا وجدتها في : أدوات > خيارات > قاعدة البيانات الحالية > خيارات التنقل > إظهار الكائنات المخفية شكرا لكم كثيرا تحياتي ( الشاعر )
    1 point
  30. السلام عليكم ورحمة الله وبركاته اخي يوسف الشرح المرفق من احد ابداعات الأستاذ الكريم الفاضل ابوتامر - عمر الحسيني - الله يذكرة بكل خير - و يجزاه عنا كل خير وكان الموضوع بعنوان حل مشكلة اعتراض حماية اورق الملف لتنفيذ الماكرو و الشرح كالتالي
    1 point
×
×
  • اضف...

Important Information