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

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

  1. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

    المشرفين السابقين


    • نقاط

      26

    • Posts

      13165


  2. الصـقر

    الصـقر

    الخبراء


    • نقاط

      11

    • Posts

      1836


  3. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      10

    • Posts

      12869


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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      8

    • Posts

      8723


Popular Content

Showing content with the highest reputation on 04/02/16 in مشاركات

  1. انظر الى الورقة 3 تجريبي salim 1.rar
    3 points
  2. Private Sub UserForm_Activate() For i = 1 To 200 Step 0.1 With Me DoEvents .Height = i: .Width = i * 2 .Top = .Top - (i / 2000): .Left = .Top - (i / 2000) End With Next End Sub Private Sub UserForm_Initialize() Me.Height = 0 Me.Width = 0 End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) For ii = 1 To 20 Step 0.005 With Me DoEvents .Height = .Height - ii: .Width = .Width - ii * 3 End With Next End Sub مرحبا هذه محاولة شبيهة بما قام به الاستاذ الصقر
    3 points
  3. السلام عليكم ورحمة الله وبركاته إخواني في الله الموضوع ليس جديد وقد تم طرح الكود في مشاركات فرعية بموضوعات مختلفة بالمنتدى ، ولكن لأهميته رأيت ان أقوم بطرح موضوع مستقل ليسهل الوصول إلى الموضوع باستخدام خاصية البحث في المنتدى فكرة الكود هي استخراج القيم الغير مكررة أي استخراج القيم الفريدة في نطاق محدد .. والكود مشروح لمن أرد الشرح لعل وعسى أن يتعلم الجميع كيفية استخدام الأكواد بشكل جيد وهذا هو الكود مصحوب بالشرح ... أرجو أن ينال إعجايكم Sub UniqueByDictionary() 'يقوم الكود باستخراج القيم الفريدة أي الغير مكررة باستخدام الكائن قاموس '---------------------------------------------------------------------- 'المتغير الأول لتخزين قيم النطاق والمتغير الثاني لتخزين مفاتيح القاموس 'الثالث متغير للكائن القاموس والرابع متغير يستخدم في عمل حلقة تكرارية Dim myData As Variant, Temp As Variant Dim Obj As Object, I As Long 'ليساوي الكائن المسمى القاموس والذي يعتبر أداة قوية للتعامل مع القيم الفريدة [Obj] تعيين المتغير Set Obj = CreateObject("Scripting.Dictionary") 'ليساوي قيم النطاق في العمود الأول [myData] تعيين المتغير myData = Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row).Value 'حلقة تكرارية تبدأ من أول عنصر في مصفوفة القيم إلى آخر عنصر في المصفوفة For I = 1 To UBound(myData) 'هذا السطر هو أهم سطر في الكود حيث يتم تمرير القيمة للقاموس 'فيقوم القاموس بتخزينها إذا كانت القيمة تصادفه لأول مرة 'أما إذا كانت القيمة مكررة فلا يقوم بتخزينها مرة أخرى Obj(myData(I, 1) & "") = "" Next I 'ليساوي مفاتيح القاموس والتي تمثل القيم الغير مكررة [Temp] تعيين المتغير Temp = Obj.Keys 'حيث يتم تحديد عدد الصفوف [E1] وضع عناصر القاموس الغير مكررة في الخلية 'والتي تقوم بعد عناصر القاموس التي تم تخزينها [Count] من خلال كلمة 'عبارة عن مصفوفة بالقيم تكون على شكل أفقي لذا نستخدم [Temp] المتغير 'لتحويل القيم من الشكل الأفقي إلى الشكل الرأسي ليناسب وضع النتائج في عمود [Transpose] كلمة Range("C1").Resize(Obj.Count, 1) = Application.Transpose(Temp) End Sub وإليكم الملف المرفق مطبق فيه الكود مع مثال بسيط حمل الملف من هنا تقبلوا تحياتي
    2 points
  4. الاخوة الكرام واساتذتى فى هذا الصرح العلمى أستكمالا لهذا الموضوع على الرابط التالى أقدم لكم اليوم ثلاث اكواد تقوم بعمل مؤثرات حركيه عند فتح أو اغلاق الفورم أعتقد هذا الموضوع جديد فى المنتديات العربيه والاجنبيه وأن كان موجود فأشهد الله انى لم اصادف موضوع أو كود مثل هذا وأن هذا العمل خالص من اجتهادى الميزه فى الاكواد انها تناسب جميع نسخ اصدارات الاوفيس ارجوا ان ينال اعجابكم جارى تطوير الموضوع للوصول الى ما هو افضل وانتظر اقتراحاتكم ونقدكم ومشاركاتكم تقبلوا جميعا تحياتى اخوكم وتلميذكم / حسام لا تنسونا من صالح دعائكم ولا تنسوا الدعاء للفقيد استاذنا / عماد الحسامى مؤثرات على فتح الفورم.zip
    2 points
  5. أخي الغالي عبد العزيز بارك الله فيك وجزيت خيراً .. لكم أسعدتني كلماتك ومرورك العطر بالموضوع تقبل وافر تقديري واحترامي
    2 points
  6. بارك الله فيك يا غالي على الدّروس الهامّة و المفيدة و الشّرح البسيط .. لم نشبّع .. و لا نشبع من علمك أبدًا واصل و فّقك الله .. و هأنذا بصدد محاولة فهم الكود ..
    2 points
  7. السلام عليكم الشكر لجميع الاخوة الكرام تم تعديل الكود ليتوافق مع احجام مختلفة اختر الحجم المناسب و اكتبه في التصريح مثل Const iHeight As Integer = 150 Const iWidth As Integer = 600 الكود '---------------------------------------------------- Const iHeight As Integer = 150 Const iWidth As Integer = 600 '---------------------------------------------------- Private Sub UserForm_Activate() Ap_H = Application.Height Ap_W = Application.Width With Me For iHH = 1 To iHeight .Height = iHH: .Top = ((Ap_H - .Height) / 2) DoEvents Next For iWW = 1 To iWidth .Width = iWW: .Left = ((Ap_W - .Width) / 2) DoEvents Next End With End Sub Private Sub UserForm_Initialize() Me.Height = 0 Me.Width = 0 End Sub
    2 points
  8. لما لا تقوم بجمع الشروط في دالة واحدة؟! صراحة لم أجرب قبل استدعاء دالة من دالة أخرى ، رغم أنه من المنطقي أن تتم بسهولة ، ربما الخطأ يرجع إلى أنك تستخدم نفس المتغيرات في الدالتين .. طيب جرب تغير في المتغيرات في الدالة الثانية يعني بدلاً من a, x, y, d, e خليها a1,x1,y1,d1.e1
    2 points
  9. ممتاز اخونا حسين يعني ان الفلاشة معك انت للحفاظ على خصوصية البرنامج ولكن ابو العقاب يريد البرنامج داخل الفلاشة ، بمعنى انه يريد توزيع البرنامج مع الفلاشة بحيث يمكنك تشغيل البرنامج بعد شرائه على اي جهاز حاسوب اي لا يمكنك نسخه الى فلاشة اوجهاز آخر
    2 points
  10. أخي الحبيب أحمد هل النسخة التي تعمل عليها هي نفس النسخة الموجودة الرابط الخاص بها في الموضوع الأصلي لأخونا ياسر العربي ..؟؟ نريد توحيد النسخة حتى نتلافى الأخطاء أو على الأقل حتى يكون الخطأ عند الجميع في حالة وجود خطأ .. ميبقاش كل واحد في حاله !! وكل واحد عنده أخطاء غير اللي عند التاني تقبل تحياتي
    2 points
  11. بعد اذن اساتذنا الكرام هذا حل بسيط وممكن يوذي الغرض ضع هذا الكود في الفورم الواجهة في حدث عند التحميل للفورم If Dir("j:\sndesk\MOVI.txt") = "" Then MsgBox "áíÓ áÏíß ÍÞ ÊÔÛíá ÇáäÙÇã", vbOKOnly, "67749199*íÑÌí ÇáÇÊÕÇá ÈãÏíÑ ÇáäÙÇã*" DoCmd.Quit End If شرح الكود If Dir("j:\sndesk\MOVI.txt") = "" Then هي مسار الفلاش عندي اي ان الفلاشه علي برتشن ال ( j ) ويوجد ملف تكست اسمة MOVI داخل ال (الجي) في فولدراسمه sndesk طبعا لو انت مش موصل الفلاش الي عليها الملف ده علي الكمبيوتر مش هيفتح البرنامج وتظهر لك الرسالة MsgBox "áíÓ áÏíß ÍÞ ÊÔÛíá ÇáäÙÇã", vbOKOnly, "67749199*íÑÌí ÇáÇÊÕÇá ÈãÏíÑ ÇáäÙÇã*" DoCmd.Quit ثم يغلق البرنامج
    2 points
  12. انسخ هذه المعادلة الى الخلية B2 واسحب نزولاً =IFERROR(INDIRECT("'"&A2&"'!E4"),"") اذا لم تعمل معك المعادلة استبدل الفاصلة بالفاصلة المنقوطة
    2 points
  13. هذا برنامج صغير لحذف وإزالة التشكيل عن النصوص مثلا يحتاج احدنا آية كريمة او حديث شريف خالية من التشكيل ، فتصور كم من الوقت والجهد يحتاج لازالة تلك الحركات انا اعتقد ان كتابتها من جديد ارحم في هذا التطبيق يتم النسخ واللصق والتطبيق ولمن اراد زيادة في التطبيق والافكار يتفضل من هنا برنامج حذف التشكيل.rar
    2 points
  14. اخى فى الله جزاكم الله خيرا وياريت تحاول تظبط الكود بحيث يتناسب مع اى فورم فى العرض والارتفاع بمعنى اعمل مثلا فورم عرضه 600 وارتفاعه 150 وشغل الكود شاهد ماذا يحدث ستجد ان عرض الفورم بعد انتهاء الكود لم يتم عرض الفورم بالكامل اذا كان عندى متسع من الوقت ساراجع الكود واحاول فيه تظبيطه ليناسب اى فورم تقبل تحياتى
    2 points
  15. الثوابت تنقسم الثوابت في لغة الفيجوال بسيك إلى ثلاثة اقسام رئيسية وهي نصية او رقمية ومنطقية ويمكننا تعريف ثابت في البرنامج من خلال الكلمة المحجوزة const ولاحظ هنا اخي الكريم في الفيجوال بيسك لا يمكنك تعريف ثابت إلا من خلال المبدأ التالي Const name as type = value Const اسم الثابت as قيمته = نوعه عند كتابة الثابت لا يمكنك نسب قيمة له إلا في نفس السطر الذي قمت بكتابة الثابت فيه . اي انه لايمكنك ان تكتب الثابت في سطر وقيمة الثابت في سطر اخر وهذا من الاشياء التي تميز المتغير عن الثابت امثلة على تعريف ثوابت جديدة لاستخدامها في البرنامج Const name As String = "Yasser" ثابت من نوع نص Const age As Integer = 30 ثابت من نوع عدد صحيح Const marry As Boolean = True ثابت من نوع قيمة منطقية الطرق التي من خلالها تستطيع تعريف ثوابت لبرنامج الطريقة التقليدية تعريف ثابت ونسب قيمة له مثل Const name As String = "Aseel" كتابة الثابت بدون تحديد نوع له مثل Const name = "Mohamed" كتابة اكثر من ثابت مع تحديد القيمة لها في سطر واحد :- مثل Const name As String = "Mohamed", age As Integer = 30 كتابة اكثر من ثابت بدون تحديد نوع الثابت مثل Const name = "Mohamed", age = 33, marry = False لاحظ هنا اننا لم نستخدم كلمة تعريف الثابت إلا في بداية الجملة فقط الأخطاء المتوقع حدوثها عند تعاملك مع الثوابت تغيير قيمة الثابت في البرنامج او اثناء التشغيل مثال لذلك Const age As Integer = 20 age = 22 تعريف الثابت في سطر ونسب القيمة له في سطر اخر كما قلنا سابقاً مثال لذلك Const age As Integer age = 18 ملاحظة هامة عند تعاملنا مع الثوابت يجب علينا ادخال القيمة للثابت في نفس جملة تعريف الثابت تقبلو تحياتي ياسر العربي يتبع
    2 points
  16. ماذا ساقول بعد قول الاساتذه الكرام والاخوه الاحباب نسال الله لك الاجر وان يجزيك عنا خير الجزاء تقبل تحياتى اخى حسام ورحم الله الاخ الفقيد عماد الحسامى
    2 points
  17. اخي وحبيبي في الله صاحب الأعمال المتميزة والمتألقة في المنتدى حسام عيسى إنه لشرف كبير مروركم العطر بالموضوع بارك الله فيك وجزاك الله كل خير على كلماتك الرقيقة إن شاء الله نتدرج إلى أن نصل لمنطقة الغريق (بس مش عايزين حد مننا يغرق هناك ..!! ربنا يجيب العواقب سليمة) خايف نوصل لمنطقة الغريق دلوقتي آلاقي نااااااااااس بتصرخ وتقول : إني أغرق إني أغرق .. جزيت خيراً على دعواتك الطيبة المباركة ولك بمثل إن شاء الله تقبل تحياتي
    2 points
  18. حبيبى يا ابوالبراء تسمح لى ان احجز مقعد ام الباب مغلق بصراحه شروحات ولا اروع من كدا بس انا منتظر الدخول فى منطقه الغريق يعنى توصل بالشروحات الى ابعد مدى انا بجد عايز استفيد جزاكم الله خيرا الجزاء وجعل اعمالك فى ميزان حسناتك تقبل منى وافر الاحترام والتقدير
    2 points
  19. اخى الحبيب والغالى ابوالبراء يا كبير انت عارف انى انا قليل دخول المنتدى فى الفتره الاخيرة لكن والله العظيم لم ارى موضوعك اعذرنى لضيق وقتى والشرف لى بس الدخول لموضوع من موضوعاتك فأنا بقف مثل التلميذ قدام شرح استاذه هذه حقيقه والله ارجوا منك السماح والمعذره تقبل تحياتى -------------------------- وعليكم السلام استاذ محمد عبدالسلام وفيك بارك اخى الكريم وجزيت خيرا على دعائك المبارك اسال الله لى ولك التوفيق والسداد تقبل تحياتى
    2 points
  20. هذا استعلام الحاقي مصدره INSERT INTO ParentsCom ( Stu_eSIS, TheWay, Comu_Reasone, Comu_Date, Mobil_F ) SELECT StudentsNames.eSiS, [Forms]![ParentsCom]![Combo25] AS Expr1, [Forms]![ParentsCom]![Comu_Reasone] AS Expr2, [Forms]![ParentsCom]![Comu_Date] AS Expr3, StudentsNames.Mobil FROM StudentsNames WHERE (((StudentsNames.Section)=[Forms]![ParentsCom]![StuSection])); احفظ الاستعلام وتقدر تشغله اخ علي في الحدث المناسب لك وليكن خلف زر امر جديد ولكن مع وجود شرط ان القائمة مطابقة للنوع المطلوب! فمثلا لو اسميت الاستعلام ب query2 وخلف زر امر نكتب If Me.Combo25 = "إرسال اخطار مع الطالب" Then DoCmd.OpenQuery "query2" بالتوفيق
    2 points
  21. يا حوسو بلاش تواضع ..إنت عديت بمراااااااااااااحل كبيرة ربنا يبارك فيك ويزيدك من علمه ..بس متنساش تعدي على موضوعات أخوك ! مرورك بأي موضوع شرف كبير لنا يا كبير
    2 points
  22. السلام عليكم ورحمة الله وبركاته كنت بصدد عمل برنامج " دليل هاتف " فصادفتني بعض المشاكل باستخدام القوائم فأردت عمل شئ من التغيير في استعمال القوائم حتى هداني الله الى فكرة بأستخدام الاكواد والحمد لله انجزتها ولكنها تبقى في بدايتها وامكانية تطويرها واردة واحببت ان اشارككم بها لعل اجد من ارائكم بعض الامور التي قد تفيد بهذا الشأن هنا ملف يحتوي على صفحة من البرنامج مع احتوائه على القائمة المذكورة اخوكم عماد الحسامي
    1 point
  23. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته اقدم اليكم هذا العمل المحاسبى المتواضع وهو جدول حساب اعمار الديون او الذمم المدينه او العملاء اوالحسابات المدينه استناذا على طريقة مخصص الديون المشكوك فى تحصيلها اترككم مع العمل للتقييم وللاستفاده للجميع هذا العمل لوجه الله تعالى لاتنسونا بصالح دعاؤكم جدول اعمار الحسابات المدينه.rar
    1 point
  24. السلام عليكم ورحمة الله وبركاته إخواني الكرام انشغلنا قليلاً ولم يذكرني أحد بموضوع الأسبوع الخامس .. عموماً كموضوع للبحث : بفرض أن لديك الأرقام 1 ، 2 .. المطلوب عمل معادلات أو أكواد لاستخراج كل القيم المحتملة لهذين الرقمين النتائج المتوقعة ستكون كالتالي : 1111 1112 1121 1122 1211 1212 1221 1222 2111 2112 2121 2122 2211 2212 2221 2222 تقبلوا تحياتي
    1 point
  25. السلام عليكم ورحمة الله وبركاته إخواني وأحبابي في الله أعتقد أن الوقت الذي انقضى على الحلقة الأولى من هذه الدورة الخاصة بالمصفوفات يكفي وزيادة ، وأعتذر عن التأخر في مواصلة الدورة ، فأنتم تعرفون مشاغل الحياة .. رابط الحلقة الأولى نبدأ على بركة الله الحلقة الثانية من حلقات "دورة كاملة في المصفوفات" ، ويا ريت اللي لسه أول مرة يشوف الموضوع ، إنه يقرا الحلقة الأولى عشان يقدر يتواصل معانا .. مش عايزين نكرر المعلومة إلا للضرورة ، وعشان يقدر يتابع الجديد (دا لو فيه متابعين من الأساس) هنبدأ نتكلم عن أنواع المصفوفات : فيه نوعين النوع الأول وهو المصفوفة الثابتة يعني لها أبعاد ثابتة مش بتتغير والنوع الثاني وهو المصفوفة الديناميكية يعني غير الثابتة ودي بيتم تحديد أبعادها أثناء عمل الكود ، وممكن تتحدد في أول الكود بأبعاد محددة ، وممكن تغيرها أثناء الكود إذا لزم الأمر ... الإعلان عن المصفوفة الثابتة -------------------------------- دا مثال لأكثر من طريقة للإعلان عن المصفوفة الثابتة المحددة الأبعاد ..نشوف الكود ونضع مؤشر الماوس داخل الكود ومن لوحة المفاتيح زي ما اتعلمنا نضغط F8 ونروح نبص على نافذة اللوكال Sub DecArrayStatic() Dim arrMarks1(0 To 3) As Long Dim arrMarks2(3) As Long Dim arrMarks3(1 To 5) As Long Dim arrMarks4(2 To 4) As Long End Sub نمسك سطر سطر عشان نفهم إزاي بيتم الإعلان .. السطر الأول بعد ما كتبنا اسم المتغير (اللي هو من النوع مصفوفة) بين قوسين كتبنا من 0 إلى 3 أي أن فهرس المصفوفة سيكون عبارة عن 0 ، 1 ، 2 ، 3 .. السطر الثاني زي الأول بالضبط بمعنى إن الفهرس عبارة عن 0 ، 1 ، 2 ، 3 .. طيب ليه؟ لأن الافتراضي للمصفوفات إن الفهرس بيبدأ من الرقم صفر .. بكدا نفهم إزاي نتعامل : يا إما أحدد بداية الفهرس ولو حددتها صفر أو سبتها من غير ما أحدد البداية يبقا النتيجة واحدة السطر الثالث بداية المصفوفة 1 ونهايتها 5 أي 5 عناصر داخل المصفوفة السطر الرابع بداية المصفوفة 2 ونهايتها 4 أي عدد العناصر 3 عناصر .. نفهم من الأسطر دي إن فيه مرونة كبيرة في التعامل مع المصفوفات يعني ممكن أبدأ من أي رقم وأنتهي بأي رقم (منتهى المرونة ... بس مش مرونة بشكل كبير) ..دا لأن عملياً صعب أحدد أبعاد المصفوفة ، لأن من خصائص البيانات إنها متغيرة ، فلو مثلاً عندنا مدرسة لها قاعدة بيانات ، فالقاعدة متغيرة .. عدد الطلاب مش ثابت (طالب حول من المدرسة - طالب حول إلى المدرسة) بالتالي العدد غير ثابت ، ومن هنا لازم نتعلم النوع التاني من المصفوفات اللي هو الديناميكي أي المرن أي الغير ثابت الإعلان عن المصفوفة الديناميكية ------------------------------------- هنا بيتم الإعلان عن مصفوفة غير محددة الأبعاد ، ويمكن بعد كدا من خلال الكود تحديد أبعادها باستخدام كلمة اسمها ReDim .. Sub DecArrayDynamic() Dim arrMarks() As Long ReDim arrMarks(0 To 5) End Sub السطر الأول فتحنا قوس وقفلناه بعد اسم المتغير وبس .. بكدا وببساطة أعلنا عن المصفوفة الديناميكية .. وفي السطر الثاني لو حبيت أحدد أبعادها بستخدم الكلمة ReDim ويمكنك تحديد أبعادها اعتماداً على نطاق ديناميكي .. مثال : لو عندك طلاب وقلنا إن عددهم غير ثابت ، يبقا بتعلن عن المصفوفة وتخليها من النوع الديناميكي واثناء الكود بتشوف عدد الطلاب من خلال أسطر أخرى ، وعلى أساس الأسطر الأخرى بتحدد أبعاد المصفوفة ..يعني التحديد مبيكونش مسبق زي النوع الأول ..التحديد للأبعاد بيكون أثناء عمل الكود ننتقل لجزئية جديدة ألا وهي تعيين قيم لعناصر المصفوفة بيتم تعيين قيم للمصفوفة سواء كانت ثابتة أو ديناميكية من خلال معرفة رقم العنصر في الفهرس بالمثال يتضح المقال ودا كلام مفيهوش جدال Sub AssignValue() Dim arrMarks(0 To 3) As Long arrMarks(0) = 5 arrMarks(3) = 46 arrMarks(4) = 99 End Sub دا مثال في السطر الأول أعلنا عن المصفوفة اللي أبعادها من 0 إلى 3 أي عدد عناصرها يساوي 4 ( 0 - 1 - 2 - 3) السطر التاني وضعنا القيمة 5 لمين ؟ للعنصر اللي رقم فهرسه 0 السطر الثالث وضعنا القيمة 49 لمين؟ قولوا إنتو يا حلوين !! للعنصر اللي رقم فهرسه 3 السطر الرابع بقا ونركز عشان دا مهم .. وضعنا القيمة 99 لمين؟ نفس الكلام يا حلوين !! للعنصر اللي رقم فهرسه 4 (بس عندك ستوب STOP) ارجع تاني لأول سطر .. إحنا عندنا أبعاد المصفوفة من 0 إلى 3 يعني أول رقم فهرس عندي صفر وآخر رقم فهرس عندي 3 ... يعني الـ 4 مش موجودة (طبعاً لدواعي أمنية ..ما إحنا عارفين 4 من الأرقام المحظورة دلوقتي) طيب تتوقع ايه بعد تنفيذ السطر ؟؟؟!!!..مننساش إننا وإحنا بنتعلم مش بنفذ الكود مرة واحدة ... راجع الحلقة الأولى .. إحنا بنستخدم نافذة اللوكال ونضغط على F8 وواحدة واحدة عشان نستوعب المهم يرجع مرجوعنا لموضوعنا : بعد تنفيذ السطر الأخير هيظهر لنا رسالة خطأ بالشكل دا لأن رقم الفهرس دا مش موجود ننتقل لجزئية جديدة فيه طرق تانية لتعيين قيم للمصفوفة وهي باستخدام الدالة Array ، ودي ممكن نستخدمها عشان نخزن من خلالها قيم المصفوفة بالشكل التالي Sub ArrayFunction() Dim Arr1 As Variant Arr1 = Array("Orange", "Peach", "Pear") Dim Arr2 As Variant Arr2 = Array(5, 6, 7, 8, 12) End Sub مع استخدام الدالة دي بنعلن عنها من النوع Variant .. في السطر الأول والثاني تم الإعلان عن المصفوفة من النوع Variant وقمنا بوضع القيم بين أقواس .. ونلاحظ أقواس التنصيص أننا بنتعامل مع نصوص في قيم المصفوفة دي في السطر الثالث والرابع نفس الإعلان وقمنا بوضع القيم بين أقواس بي هنا مفيش أقواس تنصيص لأننا بنتعامل مع قيم رقمية نفذ الكود باستخدام F8 ولاحظ نافذة اللوكال بنفسك لاحظت ؟؟!! اللي لاحظ يرفع ايده .. برافو برافو محدش لاحظ حاجة .. روح لعمود الـ Type في نافذة اللوكال بعد تعيين القيم للمصفوفة ولاحظ نوع المتغير بقا متغير ...يعني بعد ما كان Variant نلاحظ اتكتب مثلاً في حالة المصفوفة الأولى اللي بتتعامل مع النصوص اتكتب String ومع المصفوفة الثانية اتكتب Integer .. وحاجة تانية إن أول رقم فهرس في المصفوفتين بيبدأ من صفر لأن دي البداية الافتراضية (مننساش يا واش يا واش) ************************************** نيجي لآخر جزئية في حلقة اليوم ألا وهي استخدام المصفوفة ودالة الإنشطار (Split Function) انشطار .. ربنا يكفينا شر النار .. !! انشطار ايه ؟! هو إنت بتصنع قنابل نووية .. الانشطار يا شطار معناه تقسيم الشيء لأجزاء صغيرة .. قطعه حتت وارميه للقطط نتكلم جد وبلاش هزار .. نشوف المثال ده Sub SplitFunction() Dim str As String str = "Red,Yellow,Green,Blue" Dim arr() As String arr = Split(str, ",") End Sub في السطر الأول أعلنا عن متغير من النوع النصي وفي السطر الثاني وضعنا قيمة المتغير النصي بين أقواس تنصيص وبيفصل بين الكلمات الموجودة في النص علامة الفاصلة (Comma) .. في السطر التالت أعلنا عن المتغير باسم Arr ووضعنا أقواس بمعنى إنها مصفوفة ديناميكية (صحيح الكلام دا مش صحيح ، بس دا مجرد مثال عشان نفهم دالة الإنشطار Split) آخر وأهم سطر وهو دا اللي يهمنا في الكود اللي فات وهو استخدام الدالة وهي دالة بسيطة جداً ومفيدة جداً جداً جداً جداً ..كفاية عشان ايدي تعبت تكوينها ببساطة اسم الدالة وبنفتح قوس ... البارامتر الأول الحاجة اللي عايزين نعملها إنشطار وهي كما في المثال النص اللي بين أقواس تنصيص "Red,Yellow,Green,Blue" وبعدين فاصلة وبعدين البارامتر الثاني وهو نوع الفاصلة اللي هيتم على أساسها عملية الإنشطار ..ممكن تكون الفاصلة دي مسافة أو أي نوع من أنواع الفواصل بين الكلمات .. وهنا استخدمنا الفاصلة Comma ووضعناها بين أقواس تنصيص لاحظ أن المصفوفة المسماة Arr بعد تنفيذ السطر الأخير حملت في 4 عناصر (من 0 إلى 4) وهي العناصر اللي فصلنا بينها بالفاصلة ، لتصبح المصفوفة حاملة (في الشهر الرابع) حاملة لأربع قيم وهي Red و Yellow و Green و Blue .. وإلى هنا تعبت يداااااااااااااااااي ولم أعد أستطيع المواصلة ، فقد كان المشوار طويل ... لمزيد من الدعم لصاحب الموضوع (ودا اختياري مش إجباري) .. ولو عندك وقت فاضي لمدة دقيقتين اتنين تابع الرابط الإعلاني في الرابط التالي (سيكون عبارة عن سلسلة من الإعلانات ..قم بالضغط على Skip Ad بعد كل 5 ثواني ... وأكرر دا مش إجباري دا اختياري ، يعني لو وقتك ميسمحش أنا مسامح .. حمل الملف الذي يحتوي على أكواد الموضوع من هنا وأخيراً تقبلوا وافر تقديري واحترامي كان معكم أخوكم أبو البراء من منتدى الأحبة منتدى أوفيسنا
    1 point
  26. بارك الله فيك أخي العزيز ياسر دائما انت مبدع وفقك الله لكل خير
    1 point
  27. exit sub هي للخروج من الشرط وفتح النموذج اصلا اذا تحقق الشرط فتح النموذج وهي نتيجة exit sub اما اذا لم يتحقق تخرج الرسالة ويغلق التطبيق اين المشكلة في ذلك ؟ طيب اجعل بدلها امر بفتح نموذج آخر
    1 point
  28. جرب هذا الملف الغاء المكرر في القائمة المنسدلة Salim.rar
    1 point
  29. ولكنه عندي يعمل استبدل الرقم وجرب db1.rar
    1 point
  30. اخى العزيز ارجو ان يفى الملف التالى بالغرض مشكور ملف العمل.rar
    1 point
  31. بارك الله فيك أخونا في الله اللي مش عارفين اسمه بسم الله ما شاء الله عليك ملاحظ نشاط ممتاز بالمنتدى ..ربنا يجعله في ميزان حسناتك تقبل وافر تقديري واحترامي
    1 point
  32. هذا الكود يظهر رقم الفلاشة التسلسي في الرسالة strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") Set colItems = objWMIService.ExecQuery( _ "SELECT * FROM Win32_DiskDrive", , 48) For Each objItem In colItems s = objItem.SerialNumber Next MsgBox s يمكنك استبدال الرسالة بمتغير يتم فحصه عند فتح النموذج فان كان موافقا لهذا الرقم والا يتم غلق البرنامج ملحوظة : يجب ان تتأكد ان الفلاشات لا تتشابه ارقامها خاصة اذا كانت من مصنع واحد انا جربت فلاشة واحدة عندي قبل الفورمات وبعد الفورمات لم يتغير الرقم
    1 point
  33. السلام عليكم ورحمة الله اليك الحل خلاصة بمشتريات الزبون.rar
    1 point
  34. لم تجب على تساؤلي اي برنامج متقدم يحتاج الى خدمات مصاحبة يتم تثبيتها على الجهاز المستخدم
    1 point
  35. أخي الكريم طلبك بسيط جداً بس دا مش ارتباط تشعبي ..دي مجرد معادلة بتريط خلية أخرى في ورقة عمل أخرى عموماً المعادلة دي حطها في الخلية C2 =IF(السجل!H2="","",السجل!H2) لو المعادلة قابلتك فيها مشاكل استبدال الفاصلة العادية بفاصلة منقوطة تقبل تحياتي
    1 point
  36. مرحبا اذهب الى خصائص العناصر اختر منها Label12 اذهب الى الخاصية Left ستجدها -200 القيمة بالسالب غيرها الى 300 مثلا بدون اشارة هذه الاداة غير مستعملة في الواجهة لهذا السبب قمت بإبعادها فقط
    1 point
  37. تفضل أخي الكريم رغم أن الموضوع بسيط ..بيظهر معاك كذا صفحة بتنتظر لمدة 5 ثواني وتضغط على Skip Ad .. ودا بيتكرر 4 أو 5 مرات (كنوع من الدعم البسيط لي) عموماً تفضل الكود وجرب وأعلمني بالنتيجة Sub CopyRow(sSheet As String, sRow As Long, LC As Long) Dim Ws As Worksheet Dim cnt As Long On Error Resume Next Set Ws = Sheets(sSheet) On Error GoTo 0 If Ws Is Nothing Then MsgBox "Sheet " & sSheet & " Doesn't Exist In The Workbook.", vbExclamation, "Sheet Not Found!" Exit Sub End If cnt = Sheets("بيانات المدرسة").Range("B10").Value Ws.Range(Ws.Cells(sRow, 1), Ws.Cells(sRow, LC)).Copy Ws.Range("A" & sRow).Resize(cnt + 1).PasteSpecial xlPasteAll On Error Resume Next Ws.Range("A" & sRow + 1).Resize(cnt, LC).SpecialCells(xlCellTypeConstants, 3).ClearContents Application.CutCopyMode = False End Sub Sub DoIt() CopyRow "بيانات الطلبة", 7, 19 CopyRow "إنجاز1", 7, 15 CopyRow "رصد الترم الأول", 7, 29 CopyRow "أعمال السنة", 7, 15 CopyRow "رصد الترم الثانى", 7, 102 CopyRow "كنترول شيت", 12, 114 End Sub تقبل تحياتي
    1 point
  38. توكل على الله يا ابو البراء وان شاء الله ستجدنا من الصابرين للتعلم وجزاك الله عنا كل خير تقبل تحياتى وتقديرى
    1 point
  39. جرب هذا الملف تجريبي salim.rar
    1 point
  40. بسم الله الرحمن الرحيم اعضاء المنتدى الكرام السلام عليكم ورحمة الله وبركاتة فى هذا الدرس من درووس اكسيل 2010 سنتعرف على كيفية البحث بين اكثر من ملف اكسل والجداول المختلفة سواء كانت بيانات العملاء او الموردين او المبيعات وذلك با ستخدام دالة من دوال البحث وهى الدالة vlookup بطريقة متقدمة وسهلة باذن الله . لمشاهدة الفيديو من هنا https://youtu.be/RSmF4imHCJM رزيارة موقعنا للتعرف على مزيد من الدرورس من هنا http://etalmfree.blogspot.com.eg/ البحث بين اكثر من ملف.rar
    1 point
  41. ايش رايك اعطيك طريقة لطلبك وتنفع لترقيم الاقساط كذلك ضعي لحدث بعد التحديث للمدفوع ويصبح الكود بالشكل التالي Private Sub المدفوع_AfterUpdate() Me.رقم_القسط = Parent![عدد الاقساط] & "/" & CurrentRecord End Sub وللترقيم فقط Private Sub المدفوع_AfterUpdate() Me.رقم_القسط = CurrentRecord End Sub هذه الفكره اخذتها من الاستاذ والمحاسب كمال النحال من زمان وما نسيتهاش ! بالتوفيق
    1 point
  42. المتغيرات Variables سنبدأ بتعريف المتغير Variable و هو يشير إلى موقع تخزينى فى الذاكرة و يمكن أن يحتوى على بيانات (عددية أو حرفية) ، و يتم تعريف المتغير أثناء كتابة البرنامج ، و يمكن تغيير محتوى هذا المتغير أثناء سير البرنامج ، و كل متغير له اسم وحيد يعرف به و كل متغير له اسم وحيد يعرف به و لا يمكن وجود متغيرين أو أكثر بنفس الاسم فى مكان واحد بالذاكرة. عند تحديد اسم المتغير يجب اتباع شروط محددة: .2 أن يبدأ بحرف هجائى (انجليزى : A,B, …..Y,Z or a,b,….,y,z) .3 ألا يحتوى على علامات خاصة (؟،! ،: ، ....) .4 ألا يكون هذا الاسم من الكلمات المحفوظة فى اللغة البرمجية مثل End , Byte وغيرها .5 الاسم قد يتضمن أرقام و حروف. أنواع المتغيرات : نأتى لجزء مهم فى تكويد المتغيرات و هو تعريف المتغير و هو الإعلان عن اسم المتغير و نوعه داخل نافذة البرمجة ، و من صور المتغير داخل نافذة البرمجة: Dim VariableName As DataType أمثلة تعريف على أنواع المتغيرات السابقة: او من الممكن ان نعرفها هكذا Dim myIntegr As Integer myInteger =3 وهكذا مع جميع المتغيرات Variables وهذا درس مرفق لاخي الغالي ياسر ابو البراء عن المتغيرات Variables في الVBA وطبعا وجهه الشبه كبير بين الVBA والدوت نت من حيث المتغيرات وبعض الاكواد البرمجية بل ان معظم تعريف المتغيرات Variablesداخل نوافذ البرمجة عامة كلها شبه متطابقة طيب محتاجين مثال فيه متغيرات كتطبيق عملي اقول لكم لو قمتم بتطبيق درس الآله الحاسبة ستجدو ان به متغيرات من النوع Double و String المتغير Double تم تعريفه ليكون للقيم المدخلة من الآله الحاسبة ولماذا اختارنا هذا المتغير لانه يدعم الكسور لان العمليات الحسابية لن تخلو دائما من الكسور والمتغير String تم اختياره للعمليات الحسابية وهي العلامات + - * / واستخدمناه هنا ليتعامل مع العلامات على انها نص اتمنى ان اكون قد وصلت المعلومة بطريقة سهلة ياريت بقي نلاقي امثلة فيها متغيرات منوعه كدا من الجميع تقبلو تحياتي ياسر العربي يتبع المتغيرات نبدأ الحلقة.rar
    1 point
  43. السلام عليكم ورحمة الله وبركاته. ماشاء الله أخي بارك الله لك في علمك
    1 point
  44. استاذى الحبيب ابوالبراء وما العبد الا قطره فى بحر علمكم جزاكم الله خيرا على مرورك العطر تقبل تحياتى
    1 point
  45. ايه ده ..ايه ده ..ايه ده بسم الله ما شاء الله ..أيوا كدا أسعدنا وأتحفنا بهداياك يا صقر المنتدى بارك الله فيك وجزاك الله خيراً يا صاحب الحركات السحرية تقبل وافر تقديري واحترامي
    1 point
  46. السلام عليكم المعادلة موجودة في العمود الأصفر sheet2 تفضل Book2.rar
    1 point
  47. المثال المطلوب + نموذج كشف حساب بنفس المتغيرات وافر جزيل الشكر مثال.rar كشف حساب.rar
    1 point
  48. هذا تجميع لأهم الدروس والمواضيع المميزة بالمنتدى ضم روابط المواضيع المثبتة من أعمال معلمينا الفضلاء ومبدعينا في صفحة واحدة .. وذلك من باب التجديد والتغيير وإعطاء مساحة اكبر للمواضيع المتجددة .. *********************************************************************** أولا : توجيهات للأعضاء الجدد في المنتدى ثانيا : طلب من جميع الخبراء وجميع الاعضاء النشطاء الذين يتصدون للحلول وإجابة السائلين *********************************************************************** القسم الأول : الجداول والاستعلامات: الاستعلام الجدولي والمعايير تعامل-مع-ملفات-الاكسل-عن-طريق-الاستعلام-،-وبدون-كود-،-عن-طريق-استعلام-مسقط/ سِحر-جداول-الاكسس-في-تسجيل-الوقائع-عن-طريق-tables-data-macro/ القسم الثاني : النماذج: شرح أداة WebBrowser 1 2 شاشة انتظر من فضلك !! | سلسلة مهارات في أكسس | 06 | توسيط النماذج داخل النافذة أو الإطار طريقة إبداعية لتغيير خلفيات جميع النماذج إعادة تسمية العناصر الكثيرة دفعة واحدة في النموذج بأسماء متسلسلة مثل : ( Box2 , Box1 , ... ) ⭐ كيف تغير اللغة في برامجك ⭐ ✨💻 صفحة رئيسية متطورة بقائمة جانبية وأزرار فرعية ⭐ التحكم الكامل فى واجهة اكسس ( تصغير بجوار الساعة - توسيط - اخفاء - تغيير أيقونة شعار أكسس ) فصل الارقام مثل (الرقم القومى/الهوية) - الرقم التآمينى .. الخ القسم الثالث : التقارير: مسقط التقارير او صانع التقارير انشاء شريط طباعة للتقرير القسم الرابع : الماكرو والوحدات النمطية VBA: إنشاء دروس VBA أكسس كشكول VBA ترجمة النصوص وتحويلها إلى صوت في vba باستخدام جوجل دالة لحساب أيام الحضور والغياب .. وفكرة عد القيم النصية في حقول السجل الواحد :: اجعل برنامجك يعمل على النواتين 32بت و 64بت اجعل برنامجك يعمل على النواتين 32بت و 64بت _ طريقة ثانية دوال عامة وافكار مختلفة ( بداية مهمه لتسجيل الاخطاء) دوال عامة وافكار مختلفة ( FileDialog ) دوال عامة وافكار مختلفة ( بداية مهمه لتسجيل الاخطاء) دوال عامة وافكار مختلفة ( FileDialog ) (ImmediateWindowHelper) تفقيط عام متعدد : تحويل الارقام وقيمة ارقام العملة أو ( عملات متعددة ) الى نص مع التفقيط باللغة العربية ولغة اخرى منتقى التواريخ "Date pickers" إصدار-جديد-فكرة-بسيطة-لطباعة-أو-إظهار-رسائل-بنتائج-الأكواد-مع-إمكانية-التفعيل-والتعطيل/? التحكم-الكامل-فى-واجهة-اكسس-تصغير-بجوار-الساعة-توسيط-اخفاء-تغيير-أيقونة-شعار-أكسس/ متعقب-التغييرات-الذكي-2024 اداة البحث المتعددة الوظائف مُطَهَّرُ النُّصُوصِ الْعَرَبِيَّةِ ( ازالة المسافات الزائدة و التشكيل و تنظيف النصوص - و توحيد الاشكال المختلفة للأحرف ) مُطَهَّرُ النُّصُوصِ الْعَرَبِيَّةِ الاصدار 2 ( ازالة المسافات الزائدة و التشكيل و تنظيف النصوص - و توحيد الاشكال المختلفة للأحرف ) أتمتة عمليات الضغط وفك الضغط للملفات و المجلدات (WinRAR / Seven Zip ) تنفيذ الأوامر والملفات في بيئة Windows مع تحكم دقيق في العمليات القسم الخامس : قواعد البيانات SQL وما يتعلق بها: أكسس و اسكيوال سيرفر Access with Sql Server الأكسس و SQL جُمل SQL مشاركة قاعدة البيانات على الانترنت بواسطة SQL Server [تطبيق] تحويل قاعدة بيانات اكسس الى SQL Server (الجزء الاول _ الجزء الخامس) ربط الاكسيس ب php القسم السادس : البرامج والأدوات والإضافات: إدارة الجداول المرتبطة ، أداة وشروحات نظام مراسلة واشعارات شبيه بالفيس بوك معالج بحث وتصفح مسقط التصفح كارنيهات باستخدام باركود ماتركس - QR code محاكاة برنامج واتساب بالاكسس .. هدية لاوفيسنا القائمة المختصرة - Shortcut menu ارسال رسائل whatsapp (وتساب) بدون حفظ الرقم رسائل whatsapp (وتساب) في اكسس رسائل whatsapp (وتساب) بدون حفظ الرقم ( الكاتب الذكي لدوال المجال في أكسس Dloockup, DCount, DMax, DMin, Dfirst, DLast , DSum, DAvg) ⭐⭐(( مكتبة الأكواد الخاصة )) :: الإصدار الثاني 2.0 ⭐⭐ ، /// ، مكتبة الأكواد الخاصة | سلسلة هدايا الأكسس | 04 | 🎁 - 📟 آلة حاسبة 📟 - هدية مميزة مفتوحة المصدر 🎁 🖌️✏️👨😉🧑‍💻 ... برنامج دردشة بين المستخدمين على الشبكة ... 👨‍💻🧑‍💻✍️😊✏️🖊️ 🎁 :: هديتي لكم :: 🌷📨 >> برنامج مرسال الواتسأب - مع المرفقات - << ✉️ 🙂🌷💌 🎁 :: مرسال الواتسأب :: 📨 :: الإصدار الثاني 2.0 :: مطور :: 🧬🏹 🎁 هدايا الأكسس ✨ | 03| زاد المثابر للحصول على أسماء العناصر في أكسس | أداة رائعة للمطورين 🧛🏻‍♂️ [الاصدار الثاني] ارسال رسائل جماعية لعدد x من المستخدمين على الواتس اب في الاكسس هدية: برنامج تصدير بيانات من جداول/استعلامات اكسس الى اكسل ، 32بت و 64بت هداء لكم برنامج بسيط للديون والسداد 🟢 واتساب ويب web.watsapp 🟢 هدية : تصدير كائنات دفعة واحدة الى قاعدة أخرى أو حسب إختيارك 🧮 الكاتب الذكي لدوال المجال |::| 📜 نسخة مطورة ومحدثة |::| 😊 الإصدار الثاني 2.0 ⭐ كيف تغير اللغة في برامجك ⭐ اختيار صورة من (Shell32.Dll) وحفظها بمجلد وبجدول وعرضها طريقة ابداعية للتحديث من خلال الانترنت تغيير لغة النظام في Unicode القسم السابع : الأفكار والنصائح والتوجيهات: مواضيع مهمة .. قراءة وتفكيك بيانات الحقل الى حقول تطبيقات وأفكار وتلميحات تخفيض امان windows وتسجيل المكتبات عند تنصيب البرامج هام لمطورى ومصممى قواعد البيانات إنتبهوا حتى لا تواجهوا مشاكل مع العملاء خلاصة الأقوال .. حول مسائل الحماية 🔒🔑💪🏻 القسم الثامن : مواضيع متنوعة: ملف للبحث عن المواضيع في هذا المنتدى بعض المواضيع المتميزة والمهمة ( 8 ) الحماية برقم القرص الصلب والمعالج واللوحة الأم شرح أكسس 2003 - 2007 - 2010 - 2013 ( صوت وصورة ومرفقات ) رفع نسخة احتياطية على السحابة (google drive) ::💡 أفكار وفوائد 💡:: أسهل طريقة لعمل مربعات صح ✔ أو خطأ ✘ بالحجم واللون الذي تريده ❌☑️✔️✅❎ ⭐⭐ طريقة إبداعية لتحديث نسخة الواجهات FE 🖥️ لدى المستخدمين بدون برامج أو أدوات خارجية 😊👌⭐⭐ رمز الاستجابه السريع QR CODE حسب متطلبات هيئة الضرائب السعودية: ------------------------------------------------------ 1. https://www.officena.net/ib/topic/112126-موضوع-مهم-للنقاش-ماهو-مستقبل-الاكسس-بعد-تطبيق-المرحله-الثانيه-للفاتوره-الاكترونيه/ 2. الموضوع والمرفقات النهائية لرمز الاستجابه السريع QR CODE حسب متطلبات هيئة الضرائب السعودية 3. https://www.officena.net/ib/topic/112589-مكتبة-الموقع-الفاتورة-السعودية-المبسطة/ --------------------------------------------------------------------------------------------------------------------------------------------------------------- القسم التاسع : الدروس والشروحات والمشاريع : طريقة /اضافة صوت للاكسس مع التحكم فى (الايقاف/التشغيل) للصوت تصميم قاعدة بيانات احترافيه لإدارة يوميات وشئون العاملين
    1 point
  49. السلام عليكم اخواني لدي تقرير مبني على استعلامين مرتبطين والمطلوب اذا كان الحقل فارغ لايوجد به اي بيانات (( لايظهر في التقرير )) الحقل+أسم الحقل , وايضا مكان الحقل يحل مكانه الحقل المجاور اذا كان فيه قيمة ولكم جزيل الشكر
    1 point
×
×
  • اضف...

Important Information