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

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

  1. محمد طاهر عرفه

    محمد طاهر عرفه

    إدارة الموقع


    • نقاط

      8

    • Posts

      8,486


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      7

    • Posts

      8,723


  3. أبوبسمله

    أبوبسمله

    الخبراء


    • نقاط

      7

    • Posts

      3,240


  4. عبدالفتاح في بي اكسيل

Popular Content

Showing content with the highest reputation on 08 يون, 2020 in مشاركات

  1. افتح الاستعلام الموجود في الملف وأعلمنا بالنتيجة !!!!!! BA_W.accdb
    4 points
  2. السلام عليكم تم تصويب الكود حسب الطلب... بن علية حاجي بيان ناجح 6.xlsm
    3 points
  3. الأخوة الكرام أعضاء المنتدى فضلاً لا أمراً، يرجى مراعاة تجنب الأسماء أو الكنيات الغريبة فيما يخض إسم الدخول للموقع user name ،و يفضل كون اسم الدخول باللغة العربية و عدم استخدام الأسماء الغريبة او غير المعتادة سواء باللغة العربية أو غيرها. مع مراعاة أن إسم الدخول لا يقبل التكرار بين الأعضاء، و عليه فيمكن إضافةأرقام أو نقطة مثلا بين الاسم واسم العائية (محمد.عرفه) مثلا ليصبح فريدا اذا كان الاسم المطلوب مسجلا من قبل. كما يرجى من الجميع اضافة الاسم الحقيقي باللغة العربية فى الحقل المناظر، والهدف هو تسهيل التواصل الفعال بين الأعضاء ، و ان تعذر فيتم اختيار كنية باللغة العربية فى مكان الاسم الحقيقي ملاحظة : سيتم تعديل أي أسماء دخول أو أسماء حال مخالفتها للذوق العام أو احتوائها على أي إيحاءات غير معتادة. توضح الصور التالية كيفية تغيير اسم الدخول و تسجيل الاسم الحقيقي
    2 points
  4. وماذا ترى أنت في البرنامج؟ الاكواد تقوم بنفس ماتطلب حرفيا
    2 points
  5. تفضل أخي Set myRange = ws.Range("c2", ws.Range("c2").End(xlDown)) Set myList = New Collection On Error Resume Next Me.ListBox1.Clear For Each myCell In myRange.Cells If myCell = ComboBox1.Value Then myList.Add myCell.Offset(0, -1).Value, CStr(myCell.Offset(0, -1).Value) End If Next myCell On Error GoTo 0 For Each myVal In myList Me.ListBox1.AddItem myVal Next myVal End Sub '----------------------------------------- Private Sub UserForm_Initialize() Dim myList As Collection Dim myRange As Range Dim ws As Worksheet Dim myVal As Variant Set ws = ThisWorkbook.Sheets("stock") Set myRange = ws.Range("c2", ws.Range("c2").End(xlDown)) Set myList = New Collection On Error Resume Next Me.ComboBox1.Clear For Each myCell In myRange.Cells myList.Add myCell.Value, CStr(myCell.Value) Next myCell On Error GoTo 0 For Each myVal In myList Me.ComboBox1.AddItem myVal Next myVal End Sub المصنف2.xlsm
    2 points
  6. 1-كالعادة أول صف قبل الجدول الصف رقم 3 فارغ تماماً 2-يمكنك ادراج الرقم المطلوب ليس فقط في الخلية D2 بل في اي خلية من C2 الى J2 شرط ادراج رقم واحد فقط ( أعني C2 فقط أو F2 فقط أو G2 فقط الخ...) 3- في حال تكرر الرقم المطلوب في نفس الصفحة لا يتعاضى عنه الماكرو (مثلاً الرفم 500 موجود في Sheet1 مرتين وفي Last مرة واحدة ) جربي اكتبي 500 وانقري على الزر الماكرو Option Explicit Sub My_FindNext() Dim T As Worksheet, Sh As Worksheet Dim Opt_rg As Range, Sing_cel As Range Dim Find_Range, SH_rg As Range Dim My_rg As Range Dim Ro1%, m%, RO%, col% Dim mot Dim x As Boolean Set T = Sheets("takrir") RO = T.Cells(Rows.Count, 2).End(3).Row If RO < 4 Then RO = 4 T.Range("A4:j" & RO + 1).Clear Set Find_Range = T.Range("a2:J2").Find("*", Lookat:=1) If Find_Range Is Nothing Then MsgBox "not Found" Exit Sub End If m = 4 mot = Find_Range.Value: col = Find_Range.Column - 1 For Each Sh In Sheets If Sh.Name = T.Name Then GoTo Next_Sheet Set SH_rg = Sh.Range("A1").CurrentRegion.Columns(col) Set Find_Range = SH_rg.Find(mot, Lookat:=1) Do While Not Find_Range Is Nothing If Not x Then Ro1 = Find_Range.Row x = True End If '============================================== If Opt_rg Is Nothing Then Set Opt_rg = Sh.Cells(Find_Range.Row, 1).Resize(, 9) Else Set Opt_rg = Union(Opt_rg, Sh.Cells(Find_Range.Row, 1).Resize(, 9)) End If Set Find_Range = SH_rg.FindNext(Find_Range) If Find_Range.Row = Ro1 Then Exit Do Loop If Not Opt_rg Is Nothing Then Opt_rg.Copy T.Cells(m, 2).PasteSpecial (12) T.Cells(m, 1) = Sh.Name Set Opt_rg = Nothing: m = T.Cells(Rows.Count, 2).End(3).Row + 2 Application.CutCopyMode = False x = False End If '======================================== Next_Sheet: Next Sh If m = 4 Then MsgBox "No Found Data" Exit Sub End If T.Rows(m - 1).Clear With T.Range("A4:J" & m - 2) .Borders.LineStyle = 1: .InsertIndent 1 .Font.Bold = True: .Font.Size = 14 .Interior.ColorIndex = 19 On Error Resume Next For Each Sing_cel In .Columns(2).SpecialCells(4) Sing_cel.Offset(, -1).Resize(, 10) _ .Interior.ColorIndex = 35 Next Sing_cel End With T.Activate: T.Range("A4").Select End Sub الملف OmHamza.xlsm
    2 points
  7. انا مش فاهم انت عايزه ايه بالضبط عندما تختارين العدد المطلوب من خلال الــــ Input Box يتم تكرار بيانات كل صفخة حسب العدد الذي أخترته (هكذا انا فهمت من سؤالك) يرجى ادراج ملف لا يتعدى الثلاث صفحات كلها مليانة Data (على الأكثر 10 صفوف / لا يكفي صفين ) الــ Data يجب ان تكون مختلفة ليست كلها (مصطفى و سليم و الح...) و صفحة مستقلة تكتبين فيها يدوياً كل النتائج التي تتوقعين ان تحصلي عليها
    2 points
  8. لا حاجة لليوزر في هذه الحالة ABD_AZIZ.xlsm
    2 points
  9. استاذنا الفاضل / @kha9009lid مثال روعة جزاك الله كل خير كثيرا ما اتعلم منك اشياء كثيرة فى الاول كنت هتجنن لان النموذج form1 غير موجود وجلست اقول فى نفسى اين هو هذا النموذج الذي به progrees bar الى ان عرفت انه مخفى وانا اشير فقط هنا لاى من االمبتدئين مثلى ان يظهر هذا النموذج ليطلع على الاكواد فن وابداع من حضرتك ربنا يجعله فى ميزان حسناتك
    2 points
  10. هل هذا كما طلبت New Microsoft Access Database.accdb
    2 points
  11. توجد عدة طرق لعمله لو بحث في الموقع ستجد العديد من الامثلة جرب المرفق ربما يحقق طلبك 11.accdb
    2 points
  12. وعليكم السلام اذا كنت فهمتك بشكل واضح يمكنك استخدام قاعدة التحقق من الصحة واليك رابط ميكروسوفت للتوضيح والبحث فالمنتدى اكثر https://support.office.com/ar-sa/article/تقييد-إدخال-البيانات-باستخدام-قواعد-التحقق-من-الصحة-b91c6b15-bcd3-42c1-90bf-e3a0272e988d
    2 points
  13. السلام عليكم ورحمة الله السادة المهندسين ، عند تصدير استعلام الى اكسل اريد تخزينه في مكان محدد من قبل مستخدم البيانات ، وليس مكان ثابت وشكراً
    1 point
  14. فورم ترحيل بيانات الى الشيت المختار وطباعة البيانات الفيديو
    1 point
  15. اليكم برنامج دول وعواصم قارة اسيا من هذا الرابط https://top4top.io/downloadf-1616dgrpq1-rar.html وطريقة تسطيب البرنامج تم شرحه فى فيديو دول وعواصم افريقيا السابق وهذا رابط اخر على ميديا فاير برنامج دول وعواصم قارة اسيا
    1 point
  16. احسنت استاذ وجزاك الله ربي خير الجزاء
    1 point
  17. اتفضل اخى قاسم @khasem شوف بيانات المشرف عماد هل هذا ما تريد فى العدد ؟ visit.accdb
    1 point
  18. اللهم آمين ووالديك وجميع المؤمنين والمؤمنات والمسلمين والمسلمات الاحياء منهم والاموات انت لديك مربع النص الذى به المعادله nn وكتبت معادلتك التاليه ووضعت شروطك وقلت ان كان يوم جمعه او سبت اكتب عطله رسميه وان لم يكن ضع nn طيب ماذا يحتوى nn ؟ =IIf(Format([mm];"dddd")="الجمعة" Or Format([kk];"dddd")="السبت";"عطلة رسمية";[nn]) طيب ما الذى نريد اظهاره انا اخدت من تصميم التقرير انك تريد اسم المدرسه وتفاصيل طبعا حقل اسم المدرسه غير مضاف فقمت باضافته واجعلته غير مرئى واسميته ns =IIf(Format([mm];"dddd")="الجمعة" Or Format([kk];"dddd")="السبت";"عطلة رسمية";[ns]) يارب اكون قدرت اشرحلك واوصلك المعلومه ببساطه اذا اردت اظهار معلومات اخرى فى هذا الحقل اجمعهم فى الاستعلام فى حقل واحد ووضعه فالتقرير واخفه وضع اسمه كما تم الشرح بالتوفيق اخى قاسم
    1 point
  19. وعليكم السلام اخى قاسم @khasem هل هذا ما تريد ؟ اذا كان نشرح ان لم يكن وضح ماذا تريد ان يظهر مكان الخطأ ان لم يكن هذا عطله رسميه - السبت او الجمعه بعتذر نسيت ارفاق الملف visit.accdb
    1 point
  20. السلام عليكم بمراجعة ملف الاكسيل المشار اليه، وجدت به دالة جاهزة اسمها StrReverse تقوم بعكس النص باستخدام VBA ، وهي كافية لاداء المطلوب و تعمل ايضا فى الوورد الدالة من موقع ميكروسوفت و عليه قمت بتطبيقها فى الوورد ، و عملت معي جداً فقط قبل تشغيل الكود قم باختيار النص المطلوب عكسه، حيث يعمل الكود الذى أعددته على النص المختار فقط Sub reversit() Selection.Text = StrReverse(Selection.Text) End Sub مرفق الملف Word-Reverse.docm
    1 point
  21. ربنا يكرمك يا استاذ سليم اللهم امين بارك الله فيك احترامى
    1 point
  22. السلام عليكم ورحمة الله المسألة لا تحتاج إلى كود بل يكفي حماية الشيت المعني بكلمة سرية مع السماح بالعمليات التي يمكن القيام بها على الخلايا... والله أعلم بن علية حاجي
    1 point
  23. الله حضرتك اجدع اخ والله ربنا مايحرمنى منك وربنا يراضيك زى ما بتراضينا وربنا يحفظك لينا يارب ربنا اعلم انا بدعى لحضرتك من قلبى والله انت انجدتنى انجدتنى انجدتنى ربنا يكرمك زى ما كرمتنى اللهم امين يارب انا يعجز لسانى عن شكرك اقسم بالله يا اطيب انسان يا استاذ سليم اكثر الله خيرك ياااااااااااااارب اشكرك والله من قلبى شكراااااااااااااااا
    1 point
  24. السلام عليكم غير امتداد الملف من accdb / accde الى accdr تحياتي
    1 point
  25. محمدعبدالعزيز أين الضغط على الإعجاب لهذه الإجابة الممتازة ؟!!!💙
    1 point
  26. شكرا جزيلا أخي عبدالفتاح في بي اكسيل صحيح Net framework لم يكن مثبت عندي وقد ثبته والكمبوبكس يعمل الآن بشكل صحيح جعله الله في ميزان حسناتك
    1 point
  27. تاكد من هذا البرنامج Net framework موجود في جهازك وان يكون اخر اصدار لعل المشكلة منه
    1 point
  28. ماشاء الله استاذ @محمد احمد لطفى وهو المطلوب جزاك الله عني كل خير
    1 point
  29. جرب هذا الملف فى مكتبة الموقع يقوم باستخراج قيمة خلية او مجموعة خلايا من مجموعة ملفات فى مجلد محدد
    1 point
  30. تم البدء فى إرسال البريد الجماعي كما تم اضافة ما سبق لقواعد المشاركة
    1 point
  31. تم إضافة البنود 35-38 و الخاصة باسم الدخول و الاسم الحقيقي أو الكنية
    1 point
  32. السلام عليكم تم نشر موضوع للتنبيه مرة أخرى، و سيتم تعميمه بالبريد باذن الله
    1 point
  33. تم معالجة الأمر 1- ليس هناك من ضرورة لتلوين اي حلية لاحتيار التكرار 2-عند تشغيل الكود تظهر لك رسالة تطلب تحديد عدد التكرار (بين 1 و 9) Option Explicit Sub Get_data() Dim Tar As Worksheet, SH As Worksheet Dim Rg As Range, Rg_Sh As Range Dim Full_Rg As Range Dim Sing_Cel As Range Dim max_Col%, max_Ro%, m%, k%, t%, Ro% Dim Bol As Boolean Dim Fin_Rg As Range Set Tar = Sheets("takrir") Ro = Tar.Cells(Rows.Count, 2).End(3).Row If Ro < 2 Then Ro = 2 Tar.Range("A2:J" & Ro).Clear k = Application.InputBox("How Many Times", Type:=2) If k < 1 Or k > 9 Then MsgBox "Your number must be betwenn 1 and 9" Exit Sub End If For Each SH In Sheets If SH.Name <> Tar.Name Then Set Rg_Sh = SH.Range("A1").CurrentRegion If Rg_Sh.Rows.Count = 1 Then GoTo Next_SH Set Rg_Sh = Rg_Sh.Offset(1) _ .Resize(Rg_Sh.Rows.Count - 1) max_Col = Rg_Sh.Columns.Count max_Ro = Rg_Sh.Rows.Count m = Tar.Cells(Rows.Count, 2) _ .End(3).Row + IIf(Not Bol, 1, 2) Bol = True Tar.Cells(m, 1) = SH.Name For t = 1 To k Tar.Cells(m, 2).Resize(max_Ro, max_Col).Value = _ SH.Cells(2, 1).Resize(max_Ro, max_Col).Value m = Tar.Cells(Rows.Count, 2).End(3).Row + 1 Next t End If Set Fin_Rg = Tar.Range("A:A").Find(SH.Name, lookat:=1) If Not Fin_Rg Is Nothing Then With Fin_Rg.Resize(max_Ro * k, 1) .Merge .VerticalAlignment = 2 End With End If Next_SH: Next SH m = Tar.Cells(Rows.Count, 2).End(3).Row If m = 2 Then Exit Sub Set Full_Rg = Tar.Range("A2:J" & m) With Full_Rg .InsertIndent 1 .Borders.LineStyle = 1 .Font.Bold = True: .Font.Size = 16 .Interior.ColorIndex = 35 For Each Sing_Cel In .Columns(2).SpecialCells(4) Sing_Cel.Offset(, -1).Resize(, max_Col + 1) _ .Interior.ColorIndex = 6 Next End With End Sub الملف مرفق data_by_number.xlsm
    1 point
  34. السلام عليكم أخي محمد، لا يوجد خلاف على أنه من الأفضل كثيرا أن يكون الإسم باللغة العربية، و أن يكون كذلك هو الاسم الحقيقي للشخص لتسهيل التواصل و لكن من تجربة لا يستجيب الجميع لهذا الأمر ، و قد حاولنا فيه سابقا و أرسنا بريد جماعي و تصدى عدد من الأخوة لمخاطبة الأعضاء مباشرة خاصة المشاركين منهم بضرورة اختيار اسم او كنية عربية، و حدثت بعص الاستجابة و لكنها لم تكن كاملة. و قد تم سابقا أيضا اضافة حقل لتسجيل الاسم الحقيقي و هو حاليا يظهر تحت اسم الدخول مع كل مشاركة أعلى صورة العضو، و دعونا الجميع لتسجيله و استجاب البعض و البعض لم يستجب، و ربما لدى بعض منهم أسباب لذلك و ربما هو فقط تفضيل شخصي. وقد حاولنا لفترة ثم توقفنا عن الإلحاح فى تحقيق ذلك. هناك عدد كببر من الأعضاء يمثلون الأغلبية الصامتة ، فلا يشاركون بسؤال أو جواب ، و هؤلاء لا يضرنا اسمهم لانه لا يظهر ابدا اما المشاركين الفاعلين فمنهم عدد يتمسك بكنية معينة بالعربية او الانجليزية، ولا يتفقون مع ضرورة التغيير، و لا اري الزامهم بذلك، ولكن يمكننا ارسال بريد جماعي لهم للتذكرة بهذا الطلب، دون الزام ،و لا مانع من التذكرة المباشرة من الجميع لمن تكونت معهم علاقة تواصل وصداقة من خلال المنتدى فى حدود سماح العلاقة و تقبل صاحب الإسم لذلك. النقطة التي نتوقف عندها حاليا فقط هو كون الاسم المختار به مخالفة صارخة و هنا يرجى الابلاغ حيث سيتم تعديله رغما عن صاحبه لان فى اختيار اسم مخالف عدم احترام للموقع و الأعضاء.
    1 point
  35. اتفق معكم اذا كان الاسم له دلالة سيئة سواء كان الاسم عربي او اجنبي اما غير ذلك فاعتقد ان من حق العضو ان يسجل بالاسم الذي يريد عربي او اجنبي علما بان هناك اعضاء ليسوا عرب يشاركون في الموقع الاهم ان يلتزم بالاداب العامة وقواعد المشاركة بالموقع واحترام الاخرين مواقع التواصل الاجتماعي سحبت البساط من المنتديات والكثير من المنتديات العربية فقدت روادها بسبب تدخل المشرفين في كل صغيرة وكبيرة فرض النظام امر مطلوب ولكن التشدد الزائد لا يحقق المصلحة وانا هنا لا اقصد مشاركتك اخي الفاضل وانما اتحدث بالعموم هذه وجهة نظري ومن واقع تجربة في ادارة احد اكبر المواقع العربية سابقا تحياتي وتقديري لك اخي واستاذي الفاضل @محمد حسن المحمد واعتذر عن اي خطأ املائي لصعوبة الكتابة بلوحة مفاتيح غير عربية
    1 point
  36. أخي الفاضل : اخر الحركات حسب رقم 1 أم رقم 2 كم عدد الحركات التي تريدها ..... أخر 10 حركات مثلا ؟؟؟؟
    1 point
  37. حسب علمي أن النماذج بمفهوم التقسيم أي الى قاعدتين امامية وخلفية لا تقسم فالتقسيم فقط للجداول .... ويمكن اجراء التقسيم عن طريق برنامج الاكسس مباشرة
    1 point
  38. لقد قلت لك بعد ثاني سطر في الكود خطاك قمت بوضعه بعد اول سطر تفضل تنسيق شرطى لكل الملف.xlsm
    1 point
  39. ضع هذا في المديول Function salary1(frm As String) If Forms(frm)!المهنة = "طبيب" Then Forms(frm)!الراتب = 10000 ElseIf Forms(frm)!المهنة = "مهندس" Then Forms(frm)!الراتب = 9000 ElseIf Forms(frm)!المهنة = "صيدلي" Then Forms(frm)!الراتب = 8000 ElseIf Forms(frm)!المهنة = "معاون طبيب" Then Forms(frm)!الراتب = 7000 ElseIf Forms(frm)!المهنة = "معاون مهندي" Then Forms(frm)!الراتب = 6000 ElseIf Forms(frm)!المهنة = "" Then Forms(frm)!الراتب = 0 End If End Function استدعيه من النموذج بهذا الكود Call salary1(Me.Name) DoCmd.RefreshRecord
    1 point
  40. اعذرني اخي لا املك لك اي تفسير الكود شغال معي 100% اقترح عليك تصميم ملف جديد قد تكون المشكلة منه
    1 point
  41. أعتز بشهادتك أخي العزيز مصطفى، وأسأل الله تعالى أن ينفعكم بها وأن يستجيب دعواتك الطيبة 🙂
    1 point
  42. هل هذا ماتقصده Function aboyaseen() DoCmd.OpenForm "FENABLE" End Function New Microsoft Access Database.accdb
    1 point
  43. ضع هذا السطر بعد ثاني سطر في الكود Rng.Interior.Color = xlNone
    1 point
  44. وعليكم السلام يوجد استعلام الحاق باسم q اكتب رقم الفاتوره بالحقل بالنموذج ثم اضغط زر تنفيذ سيتم الحاق البيانات بالجدول tabl2 وعمل ريفرش وعرضها بالنموذج يمكنك بعد ذلك عمل استعلام حذف البيانات التى تم الحاقها بالجدول tabl2 من الجدول conform لم اقم بعمله لانك لم توضح هل تريد حذفها ام الابقاء عليها بالتوفيق استرجاع الفاتورة البيع.mdb
    1 point
  45. شكرا من ادارة الموقع على التشجيع وتثبيت الموضوع قريبا انشاء الله سيتم نزول عواصم اوربا ومعاها عواصم اسيا ثم بعد ذلك هيبقى عواصم افريقيا +اسيا+اوربا + قارة اخرى وانشاء الله فى النهاية يكون جمعنا جميع دول العالم فى برنامج واحد وكله بفضل ربنا وتشجيعكم
    1 point
  46. 1 point
  47. تفضل تم الحل بطريقتين بمعادلات المصفوفة (Ctrl+Shift+Enter) =IF(ROWS($L$3:L3)>COUNTA($B$3:$B$500),"",INDEX($B$3:$B$500,SMALL(IF($B$3:$B$500<>"",ROW($B$3:$B$500)-ROW($B$3)+1),ROWS($L$3:L3)))) وايضا بالكود .. حتى تختار المناسب لك من بين الحلين Sub Rectangle1_Click() On Error Resume Next Worksheets("Sheet1").Range("b3:c100").SpecialCells(xlCellTypeConstants).Copy Worksheets("Sheet1").Range("I3:I100") Application.CutCopyMode = False End Sub جلب بيانات عمود بدون فراغات.xlsm
    1 point
  48. على حسب ما فهمت منك ضعه في هذا الحدث Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) End Sub
    1 point
  49. جرب هذا الكود لعله يفيدك ولكن لمدى محدد كما في ملف عملك من العمود a: j يمكنك التعديل على الكود وتغيير المدى Sub test() For Each sh In Worksheets Set Rng = Sheets(sh.Name).Range("A:J") With Sheets(sh.Name) Set c = Rng.Find("تم", lookat:=xlWhole) If Not c Is Nothing Then FirstAddress = c.Address Do Set x1 = .Range("A" & c.Row) Set x2 = .Range("J" & c.Row) .Range(x1, x2).Interior.Color = RGB(255, 0, 0) Set c = Rng.FindNext(c) Loop While c.Address <> FirstAddress End If Set c = Rng.Find("انجز", lookat:=xlWhole) If Not c Is Nothing Then FirstAddress = c.Address Do Set x1 = .Range("A" & c.Row) Set x2 = .Range("J" & c.Row) .Range(x1, x2).Interior.Color = RGB(0, 0, 255) Set c = Rng.FindNext(c) Loop While c.Address <> FirstAddress End If End With Next End Sub
    1 point
  50. السلام عليكم اخى @ازهر عبد العزيز مشاركه مع اخوانى واساتذتى @ابو تراب و @ابو ياسين المشولي جزاهم الله خيرا 💐 بالنسبه لهذا الاجراء فالماكرو كما تحب سيتم استخدام الخاصيه setproperty ولعدم التمكين نكتب اسم العنصر اى الحقل او الزر ثم نختار نوع الخاصيه وهنا ممكن والقيمه false وللتمكين مره اخرى تكون القيمه true تقبلوا تحياتى ومرورى اخوانى واساتذتى وفقكم الله azhr.accdb
    1 point
×
×
  • اضف...

Important Information