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

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

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

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

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


    • نقاط

      13

    • Posts

      13165


  2. ياسر العربى

    ياسر العربى

    الخبراء


    • نقاط

      9

    • Posts

      1510


  3. الصـقر

    الصـقر

    الخبراء


    • نقاط

      9

    • Posts

      1836


  4. أبو عبدالله الحلوانى

Popular Content

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

  1. معك حق يا بو مصطفى وانا اهنيك واغبطك على صبرك ولكن دعني اوضح لك اهم الاسباب التي تمنع الاعضاء من التفاعل مع الموضوع : 1- اولا ابدأ بنفسي حيث لا يوجد في جهازي الا الاصدار 2003 لذا لا يمكنني فتح مرفقاتك ، ولا تنسى ان مثلي كثير 2- وهو المهم انك ترفق برنامجا كاملا في كل سؤال تطرحه مليء بالكائنات والاحسن الذي يجب ان يسير عليه المتعلم انه اذا اراد طرح مسألة اعد لها مثالا مختصرا ومحكما كما يعد الفريق الطبي المريض للجراح ثم بعد الحصول على الاجابة الوافية يحتفظ به في مكتبته ليرجع اليه عند الحاجة
    2 points
  2. بعد أذن أستاذ على هذا حلا لمشكلة دون الحاجة لتغير نوع بيانات الحقل - لعله يريد الابقاء على كونه رقما ولكن استفسارى لماذا لم يكن ملف الورد تقريرا داخل البرنامج دون الحاجة للتصدير للورد؟! وعموما تفضل التعديل 7.rar
    2 points
  3. اخي واستاذي العزيز حسام خطاب اولا كل الشكر والامتنان على ما قمت به من عمل رائع جربت المرفق وما قمت به ولكن بشكل مستعجل لضيق وقتي الان وكانت النتيجة اكثر من رائعة بل جعلتني اقفز من الفرحة لانه اصبح لي امل كبير بل يقين باني ساصل الى هدفي وذلك بفضل الله ثم بفضلك اخي الكريم ولكني ساجرب المرفق بتاني وتمعن مساء هذا اليوم باذن الله وساعلمك بالنتيجة بشكل مفصل دعواتي لك بان يوفقك الله ويمن عليك بالخير والبركة اخوك ابو مهند
    2 points
  4. سيد حسام المعادلة سليمة 100% بارك الله فيك
    2 points
  5. السلام عليكم عالم الإبداع يلتقي التقاء حميماً في منتدى أوفيسنا جزاكم الله خيراً أخي الحبيب أبو البراء ...إثراء جميل وتعزيز لما تفضل به أخي الحبيب الصقر مشكوراً.. والأجمل من كل ذلك فلا يجوز الحلف بالمخلوقين ...وأعوذ بالله من اليمين الغموس والسلام عليكم
    2 points
  6. أخي الفاضل أبو عبد الله الرشود إثراءً للموضوع إليك معادلة أخرى تقوم بالمطلوب إن شاء الله =IFERROR(IF(A2="","",COUNTIF($A$2:$A$100,A2)*1/(--(COUNTIF($A$2:$A$100,A2)=COUNTIF($A$2:A2,A2)))),"") إذا لم تعمل المعادلة معك قم باستبدال الفاصلة العادية بفاصلة منقوطة تقبل تحياتي
    2 points
  7. رائعون ومبدعون كالعادة شكرا للجميع بارك الله فيكم والى الامام ما يعجبني في المبدعين دوما سباقين
    2 points
  8. رابط الفيجوال بيسك 6 كامل من رفعي لمن يعانون من مشاكل التنصيب يرجى تشغيلة كمسئول يعمل علي ويندوز 8 64 و7 32 واكس بي بجميع اصدراتها هذا ما تم تجربته عليه http://www.mediafire.com/download/b7r034dv0vcba0h/VB6.0+Enterprise.rar هل جربت هذه النسخة هذه التي اعمل عليها دائما
    2 points
  9. استاذى الحبيب ابويوسف واستاذى الحبيب ابوالبراء مروركم هو الاروع دائما هذا ما تعلمنه منكم تقبلوا تحياتى ----------------------------
    2 points
  10. أخي الحبيب حسام حل رائع وجميل .. تسلم الأيادي يا كبير تقبل تحياتي
    2 points
  11. السلام عليكم أخي الحبيب الصقر حل رائع وفقك الله تعالى له ...والمبهر فيه أن مجموع كل اسم يوضع في آخر خلية كتب جوارها ذلك الاسم مع الأخذ بعين الاعتبار أن الأسماء المتماثلة قد تأتي متفرقة ضمن العمود جزاكم الله خيراً والسلام عليكم.
    2 points
  12. اخى الكريم ابوعبدالله ضع هذه المعادله فى الخليه B2 =IF(COUNTIF(A3:$A$1000;A2)>0;"";COUNTIF($A$2:$A$1000;A2)) وسحبها نزولا لاسفل الى ما تريد من عدد الصفوف وشاهد المرفق به تطبيق عملى تقبلى تحياتى ----------------------------------------------- A.zip
    2 points
  13. بارك الله فيك أخي وحبيبي في الله حسام حلك ممتاز على حسب ما فهمت من المطلوب ..ويؤدي الغرض إن شاء الله تقبل وافر تقديري واحترامي
    2 points
  14. الاخت الكريمه ربا جربى المرفق هل هو طلبك تقبلى تحياتى ------------------------- Test.zip
    2 points
  15. استاذي القدير حسام خطاب تحية لك على ابداعك فعلا وفقت الى حد كبير ولم يتبقى الا القليل لقد كانت النتائج مطابقة تماما الا في حالة واحدة وهي اذا لم يبصم الموظف نهائيا فلن يظهر اسمه في sheet1 وما اريده هو ان يظهر اسمه ويكون امامه خليتان فارغتان لذا اعتقد يجب ان تكون بيانات عمود القسم وعمود الاسم في sheet 1 تكون مكتوبة مسبقا اي اسماء كافة الموظفين الموجودين لدينا كل منهم مكتوب اسمه وامامه خليتان واحدة للحضور واخرى للانصراف . على ان تكون هذه الاسماء قابلة للتغيير بالاضافة او بالحذف اي يمكن ان يضاف اسماء موظفين جدد او يتم حذف اسماء موظفين اخرين .. والملف المرفق فيه توضيح حيث الورقة sheet1 تكون حقولها ثابته ومكتوبة مسبقا لكافة الموظفين ويمكن التغيير فيها حسب عدد الموظفين سواء متعينين جدد او خارجين من الوظيفة اي سيتم حذفهم من هذه القائمة . اما الورقة (بيانات) فهي تمل من بصم فعلا لهذا اليوم لذا المطلوب هو تحويل الاوقات في الورقة بيانات الى الورقة الثانية sheet1 اكرر شكري وتقديري لمجهودك الكبير وتعاونك معي تقبل تحياتي وتقديري . اما اخي الحبيب محمد حسن المحمد فلك كل الشكر والتقدير على مداخلاتك وملاحظاتك القيمة نعم اخي نحن نعمل في شركة لها عدة مواقع عمل فبعض الموظفين يخرجون من منازلهم صباحا لاداء اعمالهم في تلك المواقع دون الحضور صباحا الى مقر الشركة وبعد ذلك يعودون الى مقر الشركة . او يحدث العكس اي يحضر صباحا الى مقر الشركة ثم يخرج الى موقع عمل على امل العودة ولكن لظروف العمل يبقى الى نهاية الدوام دون ان يبصم في مقر الشركة . اكرر شكري وامتناني لك ترحيل جديد.rar
    2 points
  16. اولا / الشكر لله ثم لهذا الموقع الذي اعطانا ما يفيد ونفيد به ثانيا / اشكر الاخوة الذين ساهموا معي وشاركوني وتحملوا كثرة استفساراتي لاخراج هذا البرنامج وهم الاساتذة والمشرفين(جعفر ,عبدالرحمن هاشم,ابوعارف ,ابو خليل ,رمهان ) شكرا لكم على هذا العمل ونطمع فالمزيد منكم برنامج العطاء للعقارات العقارات اسم البرنامج : برنامج العطاء للعقارات نسخة البرنامج : النسخة 1 متطلبات البرنامج : برنامج اوفيس اكسس 2003 صلاحية البرنامج : برنامج مجاني مفتوح يتم تسجيل بيانات ملاك العقارات اولا ثم تسجيل عقود المستاجرين وتاريخ بداية الايجار وعمل توزيع لها ظهور الايجارات المستحقة في تقرير حسب تاريخ استحقاق الايجار - تقرير للمستاجر لبيان عدد مرات الايجار وغيرها - تقرير يظهر الشقق الغير مؤجرة - تقرير يظهر شقق وعقارات باسم الحي - تقرير يظهر شقق المالك والباقي تقدر تكتشفة بالبرنامج البرنامج يتم استعمالة في الايجارات للشقق والاراضي وغيرها لمن يعملون في مكاتب العقار نريد ارائكم واقترحتكم ومشاركاتكم بعد تجربة البرنامج في هذه الصفحة نرجو ممن يقوم بتجربتة يفيد الموقع بذلك وكذلك في حالة وجود مشاكل يمكنة طرحها هنا لحلها وتلافيها ولن يبخل اي من الاعضاء او المشرفين في حل مشكلتك . تنبية : يلزم فتح موضوع جديد حتى يتم النظر في المشكلة من شروط الموقع رابط البرنامج هـــنــا
    1 point
  17. بعد إذن أستاذ Karrar Sabry سأجيبه على النقطة الثانية - على شرط ألا يعدد الأسألة مرة أخرى بموضوع واحد الاجابة بالصورة , وإن لم تكن الاجابة واضحة - غير الاستاذ -
    1 point
  18. واخير الحمد لله لقد تم الانتهاء من برنامج المرتبات للمعلمين والاداريين تحديث يناير 2016 بمشيئة الله وبناءا على طلب بعض الزملاء والسادة الأفاضل داخل قنا وخارجها من المحافظات فإليكم البرنامج الخاص بإدارة قوص التعليمية التابعة لمحافظة قنا فعلى من يرغب فى أى استفسار أو تعدل من الاخوة الأفاضل خارج الإدارة أو خارج المحافظة فنحن دائما فى خدمة الجميع بقدر المستطاع للاستفسار 01142948464 وأخيرا لا نرجو منكم سوى الدعاء لنا بالعفو والعافية وأن يعيننى الله على اعطاء المزيد واليكم هذا الرابط هو برنامج للممعلمين فقط على قانون الكادر http://www.mediafire.com/…/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D…
    1 point
  19. اتفضل ياأخى ولا يكون خاطرك الا مرضى ان شاء الله خاص.rar
    1 point
  20. بعد اذن استاذ على تم التعديل لخاصية منبثق لنعم لفورم adham تفضل osama.rar
    1 point
  21. اخي الفاضل السلام عليكم هل تقصد الناجح والراسب بواسطة المعادلات اتمنى ان يكون المطوب كنترول 5.rar
    1 point
  22. تم العمل على الملف دون كود بواسطة المعادلات فقط كنترول 5 salim.rar
    1 point
  23. اخي معذرة لا يمكنني فتح المرفق للتعديل بسبب الاصدار تفضل هذا مطلوبك الصقه في حدث النقر على زر داخل نموذجك مع الاخذ بالاعتبار تغيير اسم التقرير بالاسم الذي في برنامجك DoCmd.OpenReport "RepName", acViewPreview, "", "", acNormal DoCmd.PrintOut acPages, 1, 1, acHigh, 1, True If MsgBox("اقلب الورقة ان كنت تريد الطباعة في الخلف", vbOKOnly, "") = vbOK Then DoCmd.PrintOut acPages, 2, 2, acHigh, 1, True Else DoCmd.PrintOut acPages, 2, 2, acHigh, 1, True End If DoCmd.Close acReport, "RepName"
    1 point
  24. الف شكر اخي الكريم تم تطبيق الكود بنجاح فعلا شرح ممتاز ووافي جزاك الله عنا خير الجزاء ، تقبل تحياتي .
    1 point
  25. حل رائع وشرح ممتاز اخى ابو البراء .. بارك الله فيك وجعله بميزان حسناتك
    1 point
  26. اصلحها الله وانبتها نباتا حسنا وكن مستعدا ابا يوسف سنيات قليلة وتسمع يا جدو
    1 point
  27. السلام عليكم ورحمة الله وبركاته في الجدول ShippingInfo تجد ان نوع حقل ال ClintName هو Number حوله إلى text 7.rar
    1 point
  28. اخى ابو البراء تسمح لى أُقبل البراء ثلاث قبلات بارك الله فى البراء وفيكم وجزاكم الله خيرا الهى وانت جاهى ينورهالك يياسر ياأبن حواء وأدم ويجعلك فى كل كود سلامة " ههههههه " ويباركلك فى بدنك وصحتك وأولادك اخى ياسر للموضوع بقيه ولكن بموضوع أخر مرتبط بهذا الموضوع سبتم رفعه فى حينه فلا تنسانى جزاكم الله خيرا **** انتهى الجزء الاول من البرنامج تقبل وافر تقديرى واحترامى
    1 point
  29. السلام عليكم أخي الحبيب حسام صقر المنتدى جزاكم الله خيرا وعقبى لكل من تحبون اللهم ارزق كل مشتاق وكل محروم.. سعادتي بكم وبمروركم العطر لا توصف والسلام عليكم ورحمة الله وبركاته...
    1 point
  30. استاذى الحبيب ابويوسف يسعدنى اكون اول المهنئين بقدوم الحفيده ربنا يبارك فيها تقبل تحياتى
    1 point
  31. أخي الكريم تامر إليك الإضافة التالية برنامج يتم تنصيبه ومرفق معه كيفية التنصيب وكيفية حدف الصفوف التي تحتوي على القيمة صفر .. أرجو أن تفي بالغرض وإن كنت أفضل التعامل بشكل مباشر بدون استخدام الإضافات إليك رابط التحميل من هنا تقبل تحياتي
    1 point
  32. يسلم ايديك اخي حسام و بارك الله فيك وسأقوم بمحاولة فهم المعادلة و اختبار النتيجة حسب المجهود اليدوي لاهمية النتائج بعملي . اشكرك شكرا جزيلا
    1 point
  33. اخي ابراهيم طيب جرب النسخ اللي وضعت لك روابطها على ما اخي الغالي عبد العزيز يرفع اللي عنده اخي الحبيب ابو يوسف هل جربت تنزيل النسخة اللي رفعتها بعد ظهور مشاكل في النسخة الاولي معكمام هي لا تعمل ايضا؟؟ فلا اريد رؤيتك جالس واضع الايدي على الخد وتنتظر رؤية برامجنا كلنا مع بعض في هذا العمل يلا جرب النسخة كنت ارفقتها منذ فترة ان لم تعمل اخبرني لرفع اخرى
    1 point
  34. أخي الكريم السيفاني .. المتغير Range من النوع Object أي كائن وهذا النوع يشغل 4 بايت من مساحة الذاكرة وإليك تفصيل لكل نوع من أنواع البيانات والمساحة التي يشغلها بالذاكرة VBA Data Types.rar
    1 point
  35. أخي الحبيب أبا الحسن والحسين .. بارك الله فيك وجزيت خيراً على إبداعاتك المتواصلة .واصل بلا فواصل أخي الفاضل أبو حماده جرب التعديل في هذا السطر (بإضافة الرقم المطلوب إضافته) MyFileName = Form1.ComboBox1.Value & " 1" تقبل تحياتي
    1 point
  36. حلول جميلة هل ممكن حفظ الملف بصيغة xlsx وعدم تغيير ملفك إلى الملف الجديد
    1 point
  37. الله المستعان لك مني تحياتى
    1 point
  38. كل ملاحظاتك ممكن وإذا لي أي استفسار سأستوضح منك
    1 point
  39. مش عارف اشكرك بجد ازاى واسف لو كنت متقل عليك بطلباتي
    1 point
  40. انا عملت الملاحظات وسوف اعمل عليها إن شاء الله اترك لي فرصة لان الوقت متأخر
    1 point
  41. السلام عليكم ورحمة الله تفضل اخي ابو حمادة الملف المرفق إن شاء الله حسب ماطلبت وإذا فيه أي ملاحظة الجميع مابنقصر معاك كلا من جهته. تم عمل المطلوب دون المساس بما ذكرت فقط قمت بتعطيل الاكواد اللي في حدث فتح المصنف ( Workbook_Open) واللي في حدث قبل حفظ المصنف ( Workbook_BeforeSave) لكي يفتح الملف لانه عند التنزيل ممكن لايكون في مسار المجلد او تغيير إسم الملف فلن يفتح الملف ولن تستفيد منه شئ وتستطيع بعد التشييك وعمل اللازم إزالة تعطيل الاكواد بإزالة الفاصلة. لكن قبل العمل علي الملف لازم ان تنشئ مجلد بإسم شئون ادارية علي الدرايف D .كذلك تستطيع ان تكتب في الكمبوبكس إسم وتضغط زر حفظ بهذا الاسم ولو الف اسم ستلاقيهم في المجلد شئون ادارية مع تحيات اخوكم في الله / ابو الحسن والحسين حفظ باسم.rar
    1 point
  42. أخي الكريم سليم بارك الله فيك وهذه دالة معرفة أبسط تقوم بالمهمة Public Function strReverse(ByVal cell As Range) As String strReverse = VBA.strReverse(cell.Value) End Function
    1 point
  43. أخي الكريم صلاح تم تجربة الملف المرفق من قبلك ويعمل بشكل جيد .. الكود يقوم بإزالة المسافات الزائدة في بداية أو نهاية النص فقط ولكن لإزالة المسافات في وسط النصوص يتم التعديل بإضافة كلمة Application ثم يتبعها نقطة ثم اسم الدالة ليصبح الكود بهذا الشكل Sub RangeVariable() Dim R1 As Range For Each R1 In Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row) R1.Value = Application.Trim(R1.Value) Next R1 End Sub تقبل تحياتي
    1 point
  44. اخى الحبيب ابومهند على حسب ملفك المرفق الاخير نفذت طلبك شاهد المرفق وقولى رأيك وان شاء الله يعجبك انا عارف ممكن يكون فى بعض الملاحظات البسيطه وممكن نعملها بعدين بس نتاكد ان المرفق تمام من حيث الجوهر ومعتدقتش هذه المره يكون الاختلاف فى الجوهر تقبل تحياتى --------------------------------------------- 7.zip
    1 point
  45. أخي الكريم مرسال يرجى تغيير اسم الظهور للغة العربية .. قمت بتغيير شكل الملف قليلاً لسهولة التعرف على كيفية التعامل مع البيانات بشكل صحيح .. لأن الملف المرفق من قبلك غير معبر بعض الشيء عموماً يمكنك التعديل بسهولة على الملف وعلى الكود يوضع الكود في حدث ورقة العمل المسماة Sheet1 .. كليك يمين على اسم ورقة العمل Sheet1 ثم اختر الأمر View Code ثم الصق الكود التالي ..ثم انقر دبل كليك في عمود الاسم ليتم إعداد التقرير للاسم الذي قمت بالنقر عليه دبل كليك وإذا كانت الخلية فارغة يتم مسح محتويات التقرير Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Cells.CountLarge > 1 Then Exit Sub If Target.Column = 3 And Target.Row > 3 Then Application.ScreenUpdating = False Application.EnableEvents = False Cancel = True Dim Sh As Worksheet, lRow As Long Set Sh = Sheets("التقرير") lRow = Target.Row With Sh .Range("D5,D7,H8,H11,D11").Value = "" If Not IsEmpty(Target) Then .Range("D5").Value = Date .Range("D7").Value = Cells(lRow, "C").Value .Range("H8").Value = Cells(lRow, "D").Value .Range("H11").Value = Cells(lRow, "E").Value .Range("D11").Value = Cells(lRow, "F").Value MsgBox "تم إعداد تقرير للموظف " & Cells(lRow, "C").Value & " في ورقة التقرير", 64 End If End With Application.EnableEvents = True Application.ScreenUpdating = True End If End Sub تقبل تحياتي Single Report For Each Name Worksheet Double Click YasserKhalil.rar
    1 point
  46. بسم الله الرحمن الرحيم اليوم سنقوم بشرح طريقة ربط الفيجوال بيسك بالإكسيل اولا نعمل مشروع جديد عبارة عن فورم وواحد كمبوبوكس وسته تكست وثمانية ليبل وخمس أزرار وملف اكسيل بامتدادxlsx واسمه aseel امتداده اظن لا يدعم وحدات الماكرو بس عادي مع الفيجوال شغال بنفس ترتيب الشكل الاتي: خلصنا الشكل السابق ندخل علي الشغل الجديد بقي كلنا أكيد سمعنا عن المتغيرات وكلنا تعاملنا معاها قبل ما نشوف المتغيرات الفيجوال عشان نربطه بالإكسيل لازم له مراجع ومتغيرات عامة على مستوى المشروع بأكمله إيه الكلام دا بيتعمل ازاي المرجع دا ولا بنجيبه منين شوفو معايا الصور بعد الخطوات دي ياترى بنعرف نضيف موديول زي ما بنضيف فورم جديد كدا اللي بيعرف يضيف اللي مش عارف ينزل للصورة معايا ويشوف ايه البيانات دي يامعلمين دي بقي المتغيرات العامة اللي بنقول عليها وبتكون علي مستوى المشروع بأكمله يعني لازم تتحط في موديول ولتبسيط الكلام اللي فوق دا بطريقة سهلة اول سطر Public YXL As New Excel.Application YXL دا متغير يشير الى برنامج الاكسيل نفسه بمعنى عندما نريد ان نكتب في الاكسيل Application. Visible = False نكتبه كدا YXL. Visible = False اكيد وصلت الفكرة ولو مش وصلت نكمل مثال كمان المتغير ونظيره في الإكسيل YWB= Workbook YSheet= Worksheet YRng= Range اكيد الامور اصبحت سهلة كدا أي كود في الإكسيل نستبدل المذكورين في أعلاه بنظره في الإكسيل وسيعمل الكود بإذن الله يعني مش هتخترع اكواد جديدة هي نفس القديمة بس تعديلات طفيفه المهم الكل يكون عمل الفورم والموديول والاداوت كما ذكرت سابقا بالترتيب الموجود عشان الاكواد متتبدلش مع الادوات نيجي بقي للاكواد Private Sub Combo1_Click() 'جدا الكمبوبوكس ومنه بيتم جلب البيانات بمعلومية الرقم والكود طبعا مفيهوش جديد نفس اكواد الاكسل With YSheet LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row For iRow = 6 To LastRow If .Cells(iRow, 2) = Combo1.Text Then Text1.Text = .Cells(iRow, 2) Text2.Text = .Cells(iRow, 3) Text3.Text = .Cells(iRow, 4) Text4.Text = .Cells(iRow, 5) Text5.Text = .Cells(iRow, 6) Text6.Text = .Cells(iRow, 7) End If Next End With End Sub Private Sub Command1_Click() Dim lstrow As Long 'ودا كود ترحيل البيانات ونفس الشئ مش جديد كل اللي اتغير اللي ذكرنااه If Text1.Text = "" Then MsgBox "íÌÈ ÇÏÎÇá ÌãíÚ ÇáÈíÇäÇÊ" Else lstrow = YSheet.Range("b20000").End(xlUp).Row + 1 YSheet.Cells(lstrow, "b").Value = Text1.Text YSheet.Cells(lstrow, "c").Value = Text2.Text YSheet.Cells(lstrow, "d").Value = Text3.Text YSheet.Cells(lstrow, "e").Value = Text4.Text YSheet.Cells(lstrow, "f").Value = Text5.Text YSheet.Cells(lstrow, "g").Value = Text6.Text Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" MsgBox ("ÊãÊ ÇáÚãáíÉ ÈäÌÇÍ") End If End Sub Private Sub Command2_Click() 'ودا كود اظهار برنامج الاكسيل بردو غيرنا اللي اشرنا ليه فقط YXL.Visible = True End Sub Private Sub Command3_Click() ' ودا لاخفاء برنامج الاكسل YXL.Visible = False End Sub Private Sub Command4_Click() 'لحفظ البرنامج المفروض المتغير يكون شغال بس مش عارف سبب المشكلة ايه حاليا فقلت اجرب الكود العادي اشتغل تمام مشي حالك 'åäÇ ãÔ ÚÇÑÝ ÇáãÊÛíÑ åäÇ ÞÝÔ ãÚÇíÇ æãÔ ÚÇíÒ íÍÝÙ ÞáÊ ÇÌÑÈ ÇáßæÏ ÇáÚÇÏí ÇÔÊÛá ÞáÊ Òí ÇáÝá 'YWB.save ActiveWorkbook.save End Sub Private Sub Command5_Click() 'وطبعاخروج YXL.Quit Set YXL = Nothing End End Sub Private Sub Form_Load() 'هنا بنستدعي ملف الاكسيل من نفس مسار البرنامج بتاعنا ونفتحه YXL.Workbooks.Open App.Path & "/aseel.xlsx" 'اخفاء البرنامج بعد فتحه طبعا YXL.Visible = False 'هنا بقي قولنا له ان يخلي Ysheet دي تبقى الشيت الاول والاكس شيت تبقي الشيت التاني Set YSheet = YXL.Worksheets(1) Set XSheet = YXL.Worksheets(2) عادي ليبل وبياخد بياناته من خليه معينه Label7.Caption = YSheet.Range("a1").Value Label8.Caption = YSheet.Range("a2").Value With Combo1 'ودا ا لكمبوبوكس بندرج فيه بيانات الصف b For Each Data In YSheet.Range("b6:b" & YSheet.Cells(Rows.Count, "b").End(xlUp).Row) .AddItem Data Next End With End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) ودا بقي عشان لما تدوس علي علامة الاكس فوق ميخرجشي من البرنامج ويسيب ملف الاكسيل مفتوح ومخفى '' YXL.Quit Set YXL = Nothing End End Sub وبكدا نكون انتهينا من وضع الاكواد اظن الكل واخد باله انه مفيش جديد وهو دا بالتحديد مفيش جديد كل اللي عملناه واحد تايه وعرفنا السكه خلاص وبعدين محدش ينسى يعمل ملف اكسيل اه بعد دا كله يجي حد يقولي البرنامج مش شغال ليه اقوله فين ملف الاكسيل بعد الاطلاع علي البرنامج هيجي واحد يقولي ايه القلب الجميل اللي علي الفورم دا اللي مكان السهم اهو دا من ضمن اللمسات الجمالية وبيتعمل ازاي يامعلم الشرح بسيط ف الصورة معلش بدل ما اكتب الماوس كتبت الموس شغال بقى اعذروني انا بعمل الشرح في وقت قياسي وانا شغال مرفق البرنامج ومعاه القلب عشان تعملوه مكان السهم يارب اكون وصلت المعلومة صح واي خطأ منى فدا لجهلى اعذروني منتظر الردود علي فكرة الدرس دا تقريبا بنسبة كبيرة يعتبرحصرى لمنتدى اوفيسنا انا بحثت عن ربط الفيجوال بالاكسيل كثيرا وكثيرا وكود من هنا وكود من هنا حتى اكتملت الصورة امامي وتوصلت لهذا والحمد لله مع تحياتي ياسر العربي يتبع ربط الفيجوال بالاكسل.rar
    1 point
  47. بسم الله الرحمن الرحيم 1- المكتبات والادوات DLL & OCX 2- كيفية تسجيل المكتبات والأدوات Dll & OCX في النظام 3- كيفية إضافة المكتبات وأدوات خارجية للفيجوال والعمل عليها ما هي فوائد استخدام ملفات ال DLL او لماذا نستخدم ملفات DLL: ماذا تعني DLL: هي اختصار لمجموعة الكلمات التالية Dynamic link libraries لمحة سريعة عن DLL: هي عبارة عن ملفات مترجمة(Compiled files) شبيهة الى حد بعيد جدا بالملفات التنفيذية و التي تحمل اللاحقةExe, ملفات ال DLL يمكن ان تحتوي على Codes او يمكن ان تحتوي على مصادر resources او ممكن ان تحتوي على بيانات Data و قد تجد DLL يحتوي على كل ما سبق ذكره, و لكن الفرق الجوهري بين DLL و Exe هو أنّ ملفات DLL لا يمكن تنفيذها بشكل مباشر و انما يتم استثمارها من قبل تطبيقات اخرى اي ان ملفات DLL ليست مستقلة بحد ذاتها و تحتاج الى تطبيق دائماً للاستفادة منها مع انها تحتوي على اكواد تنفيذية مثلها مثل exe و لكن لا يمكنها ان تعمل بمفردها و يمكنك تخيل ان ملفات DLL هي ملفات مساعدة للتطبيق للقيام بعمله. الهدف الرئيسي من وجود ملفات DLL هو مشاركة الاكود بين العديد من التطبيقات اي استخدام نفس ال DLL من اكثر من تطبيق سواء بوقت واحد او بشكل منفصل. والادوات ocx تشبه نفس وظائف dll بصورة كبيرة كيفية تسجيل الأدوات نفترض ان لدينا ملف dll او ocx نريد اضافة للنظام للعمل عليه من داخل الفيجوال بطريقة سليمة الطرق كثيرة ولكن نختصر ونضع الخلاصة نفترض انا لدينا اداة اسمها actskin4.ocx نقوم بنسخها لملفات النظام اذا كان 32 لملف c:\windows\system32\actskin4.ocx اما اذا كان النظام 64 bit فلا بأس من نسخ الملف مرتين في المسارات الاتيه c:\windows\system32\actskin4.ocx C:\Windows\SysWOW64\actskin4.ocx ونقوم بعمل نوت باد اذا كان النظام 32 نضع هذا السطر regsvr32 c:\windows\system32\actskin4.ocx ونحفظه بامتداد bat وليكن اسم الملف reg.bat اما نظام ال64 نضع الاسطر التالية regsvr32 c:\windows\system32\actskin4.ocx regsvr32 c:\windows\SysWOW64\actskin4.ocx وتعمل لكلا النظامين ويتم الحفظ ايضا بامتداد bat واسم الملف ليكن هكذا reg.bat وغالبا يتم فتح الملف بعد ذلك كمسئول كليك يمين وRun admin لتظهر نافذة تقول انه تم التسجيل بنجاح ولقد وضعت برنامج في المرفقات للتسهيل علي البعض في تسجيل الاداوت كيفية إضافة المكتبات وأدوات خارجية للفيجوال بعد ان قمنا بنقل الادوات الى ملفات النظام سواء 32bit or 64bit وتم تسجيلها كما بالشرح السابق نقوم بفتح مشروع جديد وبكدا نكون تعلمنا طريقة وضع الادوات علي الفورم ناتي لكيفية التعامل معها برمجيا وكمثال هنعمل علي نفس الاداة المدرجة في اعلاه وهي actskin4.ocx ما فائدة هذه الاداة : تقوم بتغيير المظهر العام لوجهه الفورم والازرار الى واجهات skinمعدة للتعامل مع هذه الاداة وهي من اللمسات الجمالية للبرنامج بتاعنا عيب الاداة : ان الليبل الاصلي لا يظهر عند تشغيل البرنامج ولا اداة image ويأتي مع الأداة ليبل بديل لليبل الاصلي يظهر مع الاداة وتستبدل الimage بال picture نأتي لكيفية التعامل معها برمجيا اولا نقوم بانشاء مشروع جديد واضافة الاداة كما سبق ويتم وضع الكود الخاص بالاداة في حدث تحميل الفورم وممكن وضعه باي حدث نشاء كزر مثلا لتغيير الskin كود التشغيل يجب اولا ان يكون لديك ملفات skin ليتم التطبيق عليها عن طريق الاداة قمت بارفاق بعض ال skin للتطبيق عليها ووضعتها داخل مجلد داخل البرنامج بتاعنا وسميته كمثال skin الكود البرمجي Private Sub Form_Load() ' سطر استدعاء وتحميل ملف الskin من مسار البرنامج داخل المجلد skin اسمه Yasser.skn Skin1.LoadSkin (App.Path & "/skin/yasser.skn") 'سطر تطبق ما تم استدعائه Skin1.ApplySkin Me.hWnd End Sub واحفظ مشروعك وقم بتشغيله لترى هذا شوف الفرق اي استفسارات توضع ف موضوع الردود والاستفسارات الى اللقاء والسلام عليكم مع تحياتي ياسر العربي يتبع مرفق برنامج تسجيل الاداوت والمشروع المنفذ ف الشرح RegOCX.rar مشروع لمسه جمالية.rar
    1 point
  48. بسم الله الرحمن الرحيم اليوم سنتحدث - عن خصائص المشروع الخاص بنا كيفية فتح نافذة خصائص المشروع ومكونتها المهمة اولا نقوم بانشاء مشروع جديد كالعادة ونضع مثلا اتنين فورم وبعد الانشاء نقوم بالذهاب لخصائص المشروع كما موضح بالصورة فتظهر لنا النافذة التالية 1- المشروع الافتراضي ودا هنسيبه كدا 2- الفورم اللي محتاجينه يفتح عند تشغيل برنامجنا والوضع الافتراضي انه فورم واحد هو اللي بيفتح نفترض ان صممنا فورم اتنين علي اساس انه شاشة الدخول هنعمل ايه نغير من هنا ونخليها فورم اتنين بس يامعلم 3- اسم المشروع الافتراضي لو عاوزين كل ما نعمل مشروع بدل كلمة project نسميه اسم تاني عادي شغال 4- دا لو هترفق ملف مساعدة مع البرنامج باين انا شايف ان ننفض ليها نخش في المهم 5- Make ودي بقي الشغل المهم هنا ونشوف صورتها بقي 1- طبعا كلنا نعرف الإصدارات للبرامج اللي هي version ربنا كدا لما يكرمك وتبقي مبرمج قد الدنيا كدا وتلاقيك بتعمل برنامج اساسي كدا وبتعمل له اصدارات مختلفة من رقم واحد دا بنحدد رقم الاصدارة اللي بنعملها والافتراضي واحد ونغير زي ما احنا عايزين 2- عنوان المشروع ودا عشان بقي لزوم الكماليات عشان أي رسالة تنبيه مسج بوكس أي حوارات تظهر يبقي مكتوب فوقها في titlebar اسمنا كدا 3- ودي معلومات برنامجنا تحط فيه بقي كل بياناتك وحقوقك وشركتك وعلامات تجارية وملاحظات تظهر في خصائص برنامجنا. 4- ودي طبعا ايقونة المشروع بتاعنا النهائي واللي اخي عبد العزيز كان محتاجها بنختار ايقونة من ايقونات الفورمات الموجودة داخل المشروع طيب الايقونات الموجودة حاليا الافتراضية وشكلها رخم نعمل ايه ياعم عبد العزيز نروح للفورم واحد ونشوف كدا 1- نفتح لاختيار الايقونة المراد وضعها للفورم 2- نحددها ونضغط open لتظهر هكذا في اعلي يسار الفورم وايضا تظهر في الtaskbar عند فتح الفورم في البرنامج ملحوظة الايقونات اللي هتشتغل معانا الأيقونات بعمق ألوان 32bitاو اقل يعني 64 هتظهر اخطاء ومش هتنضاف للفورم نذهب بعد ذلك لخصائص المشروع ونروح ل Make كما بالصورة نجد ان الايقونة تغيرت لانه البرنامج بياخد الايقونة للفورم واحد افتراضي طيب لو غيرنا جبنا فورم اتنين كدا الايقونة الافتراضية للفورم اتنين لاننا لم نقم بوضع ايقونة له نرجع للفورم واحد ونحفظ مشروعنا ونحوله لملف تنفيذي ونشوف النتيجة وبكدا نكون خلصنا جزء خصائص المشروع والى اللقاء في درس اخر باذن الله تحياتي ياسر العربي يتبع
    1 point
  49. السلام عليكم ورحمة الله بارك الله فيك اخي جلال وجزاك الله خيراً المطلوب: 1-كيف يمكننا التحكم في اعمدة ليستبوكس الموجودة بالفورم من حيث العدد والعرض 2-كما هل نستطيع اختيار الاعمدة من الشيت التي نود اظهارها في الليستبوكس 3-كما أود أن يكون هناك جمع إجمالي اللسيت بوكس التي تظهر في النتيجة بالليبل رقم -13 4-اما النقطة الرابعة فقد تمكنت من تجاوزها . ملاحظة: نأمل أن يكون كل تغيير في أي كود بالبرنامج مميزاً لكي نعرف كيف تم التغيير في الكود . هناك مرفق بالمشاركة زيد فيها عمود -المدفوع حتى يتم جمعه .3التسجيل.rar
    1 point
  50. السلام عليكم ورحمة الله وبركاته في الملف المرفق معادلة تقوم بعكس الارقام الموجودة في خلية , مثلا الارقام (123456) تعكس الى(654321) و المعادلة تعمل بصرف النظر عن عدد الارقام في الخلية. وضعت المعادلة في هذا الموضوع بسبب اني استفدت واخذت الفكرة الاساسية للمعادلة من المعادلات الموجودة في ملف اخي الفاضل الاستاذ بن علية تحياتي معادلة عكس الارقام.rar
    1 point
×
×
  • اضف...

Important Information