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

ناصرالمصرى

04 عضو فضي
  • Posts

    540
  • تاريخ الانضمام

  • تاريخ اخر زياره

مشاركات المكتوبه بواسطه ناصرالمصرى

  1. وعليكم السلام ورحمة الله وبركاته

    سؤال أخير أخى وأستاذى الفاضل 

    ماذا لو أردت تشغيل هذا الفورم على أكثر من ورقه مختلفة كهدف ومصدر البيانات واحد

    بمعنى فرضا لو هناك ورقة البيانات الرئيسية " المصدر " وهناك ثلاثة اوراق أخرى بإختلاف تصميمها

    فهل فى هذة الحالة يتم تكرار الفورم مع تغيير أسمه ومن ثم تغيير اسم الورقه الهدف 

    وهل سيكون هناك موديول لكل ورقة عمل من الاوراق الثلاثة **** أم يمكن تعديل ذلك فى الاكواد المبينه من داخل الفوروم

    أرجو أن تكون الفكرة إتضحت *** شاكر فضل حضرتك وجزاكم الله خيرا

  2. السلام عليكم أخى وإستاذى / العيدروس

    فضلا لا أمرا كيف يمكن تعديل هذا الجزء من الكود لكى تظهر الاسماء بشكل كامل وواضح

    كما يقولون على سطر واحد لان الاسماء تظهر فى الــ Frame على سطرين

    خاصة الاسماء الخماسية فكلما تم تكبير البنط يتم تداخل الاسماء فى بعضها 

    أما إذا تم تصغير البنط الى 4 على سبيل المثال تظهر الاسماء كاملة لكنها صغيرة جدا

     

        For i = 1 To UBound(Ar)
            Set MyCBox = Frame2.Controls.Add("Forms.CheckBox.1")
            With MyCBox
                .Move 110, MyTop, 90, , True
                .Alignment = 0
                .Font.Bold = True
                .Font.Size = 6
                .Caption = Ar(i)
                .Value = False
                .Name = "A" & i
                .TextAlign = fmTextAlignRight
            End With
            MyTop = MyTop + 24
        Next
        With Me
        If MyTop > .Height Then
            .Frame2.ScrollHeight = (UBound(Ar)) * 24

    فماذا يفعل أصحاب النظر الضعيف **** وما المقصود بــالرقم 24

     فهل يمكن تعديل خصائص الفوروم ليتلائم مع الجميع

    شاكر فضل حضرتك وجزاكم الله خيرا

  3. السلام عليكم ورحمة الله وبركاته

    أطلب مساعدة حضراتكم فى تصويب المعادلتين المدونتين بالمرفق التالى

    من شأنها إظهار نتائج الجمع بطريقة صحيحة فكيف يمكن تحقيق ذلك فى ظل وجود خلايا فارغة

    برجاء الاطلاع على المرفق **** شاكر فضل حضراتكم وجزاكم الله خيرا 

    اوفسينا.xlsx

  4. فضلك الله أخى الكريم و شاكر فضل حضرتك

    فى بعض الاحيان لا تحتوى بعض الاعمدة على قيم هنا تأتى النتيجة بأصفار

    فكيف يمكن أن نستبدلها بفراغ فى حالة عدم إحتواء أي عمود على قيم؟

    شكرا لك أستاذ على وجزاكم الله خير

    أخى الكريم الاستاذ / على

    أعتذر للعودة مرة أخرى للموضوع

    بعد طلب الإذن ماذا لو أردت قسمة ناتج الجمع ÷ 3 ثم ضرب × 22%

    على نفس المثال المرفق بعاليه النتيجة المتوقعه = 124087.11

    شاكر فضل حضرتك وجزاكم الله خيرا

     

  5. السلام عليكم ورحمة الله وبركاته

    لديّ هذا الكود الذي يُحول المعادلات إلى قيم وهو من إبداعات عمالقة هذا المنتدى 

    إنه يعمل بشكل رائع مع البيانات الصغيرة لكنه بطيء جدا مع البيانات الكبيره

    فهل من سبيل لجعله أسرع *** شاكر فضل حضراتكم وجزاكم الله خيرا

    Sub test()
        Dim r As Long
        Application.ScreenUpdating = False
        r = Range("A" & Rows.Count).End(xlUp).Row
        Range("a2:y2").AutoFill Range("a2:y" & r), xlFillDefault
        Range("a3:y" & r).Value = Range("a3:y" & r).Value
        Range("ca2:cy2").AutoFill Range("ca2:cy" & r), xlFillDefault
        Range("ca3:cy" & r).Value = Range("ca3:cy" & r).Value
        Application.ScreenUpdating = True
    End Sub

     

  6. السلام عليكم ورحمة الله وبركاته

    لقد أمضيت وقتًا طويل في محاولة معرفة ذلك بمفردي واستكشاف خيارات مختلفة ولكن لسوء الحظ.

    لذلك يُرجى مشاهدة ورقة الاخراج المطلوب مرة أخرى **** شاكر فضل حضراتكم وجزاكم الله خيرا

     

     

    Example+111.xlsb.xlsm

  7. السلام عليكم ورحمة الله وبركاته

    بداية أخى وأستاذى الفاضل سليم أعتذر للتأخير فى الرد

    مبدئيا قد يكون هناك تحسينات لعمل الكود

    لذلك أرجو إعطائى بعض الوقت للعمل على الملف الأصلى وسوف أخبرك لاحقا عن أى ملاحظات

    شاكر فضل حضرتك وجزاكم الله خيرا

     

  8.  

    السلام عليكم ورحمة الله وبركاته

    تحياتى للجميع وكل عام وحضراتكم بخير

    لديّ هذا الكود الذي ينسخ نطاقًا محددا من الأعمدة مع جميع التنسيقات من ورقة العمل الرئيسية إلى ورقة العمل الجديدة التي سيتم نسخ نطاق البيانات إليها

    مع إدراج خمسة صفوف فارغة بعد كل 25 صفًا لكنني أواجه صعوبة في إضافة بعض الاكواد  التي يجب تضمينها فى هذا الكود للحصول على النتائج المرجوة

    في الصفوف الخمسة التي تم إدراجها حيث توقف تركيزى وتفكيرى عند هذا الحد من كتابة هذا الكود الذى يعمل بشكل جيد جدا عند هذة المرحلة

    لذلك أطلب من حضراتكم المساعدة فى إستكمال ما أريد تحقيقة فى هذا الموضوع حيث أحتاج الى 

    **** إضافة صيغ الإجماليات بعد كل 25 صفًا في الصف الأول المدرج 

    **** إضافة بعض السلاسل النصية كتوقيعات المسؤولين مثل ( أوفسينا - أوفسينا 1 - أوفسينا 2 - أوفسينا 3 - أوفسينا 4 ) في أسفل الجداول مباشرة  في الصف الثاني المدرج .

    **** إضافة صيغ الإجماليات السابقة ( جملة ماقبله ) في الصف الخامس المدرج .

    أعلم جيدا أن كتابة كود يحتاج الى تركيز غالى وينبغى رفع موضوع لكل نقطة من النقاط الثلاثة المطلوب تحقيقها

    ولكن لكى تكمتل فكرة الموضوع أردت أن يكونوا فى موضوع واحد ... آمل أن أحصل على مساعدة حضراتكم فى هذا الموضوع

    لقد أرفقت عينة من المصنف تبين بوضوح ما أحاول تحقيقه في ورقة الإخراج المطلوب بعد إضافة الأكواد المتوقعة من حضراتكم

    شاكر فضل حضراتكم وجزاكم الله خيرا.

    Example.xlsb.xlsm

  9. نشكر سيادتكم لهذا العمل الرائع جعله الله فى ميزان حسناتكم

    ماذا لو أردنا ان نجعل الاسم الاول والاسم الاخير سواء ثلاثى أو رباعى أو خماسى فى خلية واحدة

    نرجو الافاده عن كيفية القيام بذلك **** جزاكم الله خيرا

  10. أخى الفاضل الاستاذ / فضل حسين

    بداية جزاكم الله خيرا وبارك فيكم ولا داعى إطلاقا على تقديم أى إعتذار 

    العكس تماما أنا من يجب تقديم الاعتذار لأخذ جزء من وقتكم الثمين فجزاكم الله تعالى عنى خير الجزاء

    اعتقد أن هناك حلقة تكرارية بهذا السطر من الكود من بداية الصف الثامن وحتى الصف الــ 500

    For i = 8 To 500

    كيف يمكن تغيير هذا السطر لنجعله الى أخر صف به بيانات أو ماهى الجملة التى يجب تغييرها أو ماهو المقصود بالرقم 500

    أعتذر لجهلى فى هذه النقطة ***** شاكر فضل حضرتك وجزاكم الله خيرا

  11. شاكر فضل حضرتك أستاذى الفاضل / فضل على إهتمامكم البالغ لمشاركتى فى هذا الموضوع

    فجزاكم الله تعالى خير الجزاء **** نعم بالتأكيد هو المطلوب من حيث النتائج

    ولكن هناك بعض الامور الفنية التى حاولت العمل عليها دون جدوى لعدم خبرتى فى مجال الــ VBA

    ألا وهى من الضرورى وعلى حد علمى أنه يجب الاعلان عن المتغيرات Option Explicit

    فضلا عن جزئية اهتزاز الشاشة فى بداية ونهاية الكود 

    النقطة الاخيرة وهى أننى لا أريد  إستخدام أية Buttons  لتنفيذ تلك العمليات الحسابية

    بقدر ما أريد أن تتم هذة العمليات تلقائيا فكيف يمكن تحقيق ذلك .

    أضفت فى هذا المرفق شرطا أخر  مع أختلاف نطاق الجمع ولحالتيين فقط وهما يعملان بطريقة ممتازة من حيث النتائج

    لكنى فى حاجة الى ضبط النقاط التى نوهت عنها بعاليه هذا بعد طلب الإذن فضلا  لا  أمرا 

    شاكر فضل حضرتك وجزاكم الله خيرا

     

    محاولة بالكود +1111.xlsm

  12. وعليكم السلام ورحمة الله وبركاته

    شاكر فضل حضرتك أستاذى الفاضل / بن عليه حاجى  لمشاركتك الطيبة فبارك الله فى عمرك وجزاكم الله تعالى عنى خير الجزاء

    رغم تبسيطكم القيم لمعادلات IF  فى مرفقى ومع إضافة باقى الشروط فى الملف الاصلى بإستخدام الحلين المقترحين من سيادتكم 

    إلا أنه أصبح الملف ثقيل جدا جدا نظرا لما يحتويه على مايقرب من 22000 ألف صف 

    أعتقد أننا فى حاجة إلى داله معرفه UDF لتحقيق هذة الشروط بحيث يمكن إستدعاء هذة الدالة من خلال معادله بسيطة 

    ولكنى لست متمكن من تنفيذ ذلك بإستخدام الــ VBA  فكيف يمكن تحقيق ذلك 

    شاكر فضل حضرتك وجزاكم الله خيرا

     

     

  13. السلام عليكم ورحمة الله وبركاته

    أحاول إنشاء معادلة لأكثر من خمسة عشر شرط بإستخدام الدالتين IF  و AND  لكنها بعد تنفيذ هذا العدد من الشروط ستكون طويلة جدا جدا

    وسأكتفى بعد طلب الاذن من حضراتكم بعرض ثلاثة شروط على النحو التالى 

    **** لو الخلية 8A تحتوى على كلمة الاول وجملة النطاق من الــ B8 الى E8 أكبر من أويساوى 10000 لا تعطى شيئا أى فراغ

             وان لم يكن كذلك ( أقل من الـ 10000 ) فسيتم طرح مبلغ الــ 10000.00 من جملة  النطاق من الــ B8 الى E8 

    **** لو الخلية A8 تحتوى على كلمة الثانى وجملة  نفس النطاق أكبر من أويساوى 8000 لا تعطى شيئا أى فراغ

             وان لم يكن كذلك ( أقل من الـ 8000 ) فسيتم طرح مبلغ الــ 8000 من نفس النطاق .

    ***** لو الخلية 8A تحتوى على كلمة  الثالث وجملة  نفس النطاق أكبر من أويساوى 6000 لا تعطى شيئا أى فراغ

              وان لم يكن كذلك ( أقل من الـ 6000 ) فسيتم طرح مبلغ الــ 6000 من نفس النطاق .

    كيف يمكن تحقيق هذه المسألة بمعادلة مختصرة بطريفة أخرى ****  أو كود برمجى يفوم بتفيذ هذة الشروط **** برجاء الاطلاع على المرفق التالى 

    شاكر فضل حضراتكم وجزاكم الله خيرا

    محاولة.xlsx

×
×
  • اضف...

Important Information