أكاديمية الصقر للتدريب
FBConnect

لوحة التميز الأسبوعي
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
أحمد يوسف ali mohamed ali-- لا تميز خلال هذه الفترة YasserKhalil تعديل عرض الأرقام كنسبة مئوية بالليست بوكس داخل الفورم اكسيل اسئله واجابات


اعلان هنا
صقور الاكسيل
أعلن هنا
أعلن هنا
صفحتنا على الفيس بوك
أعلن هنا


أهلا وسهلا بك زائرنا الكريم في أكاديمية الصقر للتدريب، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

Preview




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

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



27-08-2017 05:16 مساء
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
هناك معادلة استخدمها  ولكن من جراء تنفيذ المعادلة تأتى بثقل البرنامج وتهنيج البرنامج والجهاز لأن مداها واسع جدا 
=COUNTIF(INDEX($C$3:$IP$2003;0;0);$IS3)
فهل لى ان اجد من خبراء هذا المنتدى بديل لهذه المعادلة بكود يخفف من ثقل البرنامج 
المعادلة موجودة فى العمود IT  وكماترون مداها من C3:IP2003 
اليكم المرفق 
لمشاهدة الروابط يلزمك التسجيل في أكاديمية الصقر للتدريب
 
 
  فورم ادخال.rar   تحميل rar مرات التحميل :(18)
الحجم :(263.043) KB





27-08-2017 10:08 مساء
مشاهدة مشاركة منفردة [1]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
السلام عليكم أخي الكريم طائع
جرب الكود التالي عله يفي بالغرض .. 
للعلم بوجد في النطاقات المسماة استخدام لدالة OFFSET وهذه الدالة من دوال Volatile أي التي تطلب تحديث بشكل مستمر ، لربما تكون السبب أيضاً في ثقل الملف بهذا الشكل .. حيث أنني عانيت أثناء تجربة الكود أكثر من مرة واستغرق مني الكود وقتاً لكي أجعله ينفذ المطلوب في أسرع وقت ولكن يستغرق حوالي 3 أو 4 ثواني ... مع العلم أنني قمت بنسخ البيانات إلى ملف آخر ولكن نسخ بدون تنسيقات وجربت الكود ولم يستغرق سوى جزء بسيط من الثانية
Option Explicit

Sub COUNTIF_Using_Arrays()
    Dim ws      As Worksheet
    Dim a       As Variant
    Dim b       As Variant
    Dim i       As Long

    Set ws = ThisWorkbook.Worksheets("ادخال مستلزمات")
    a = ws.Range("C3:IP2003").Value
    b = ws.Range("IS3:IT2003").Value

    For i = 1 To UBound(b, 1)
        If b(i, 1) <> "" And Not IsEmpty(b(i, 1)) Then
            b(i, 2) = CountInArray(a, b(i, 1))
        End If
    Next i

    Application.ScreenUpdating = False
        Application.Calculation = xlManual
            ws.Range("IS3").Resize(UBound(b, 1), UBound(b, 2)).Value = b
        Application.Calculation = xlAutomatic
    Application.ScreenUpdating = True
End Sub

Function CountInArray(ByVal arr As Variant, ByVal vMatch As Variant)
    Dim v       As Variant
    Dim i       As Long
    Dim j       As Long

    For i = LBound(arr, 1) To UBound(arr, 1)
        For j = LBound(arr, 2) To UBound(arr, 2)
            If arr(i, j) = vMatch Then CountInArray = CountInArray + Val(arr(i, j + 1))
        Next j
    Next i
End Function




28-08-2017 12:35 صباحا
مشاهدة مشاركة منفردة [2]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
كود جميل جدا اخى ياسر ولكنه لا يفعل اتوماتيكيا لابد له من زر تفعيل او الانتقال الى الموديول وتفعيله 
ثانيا الكود يعد الصنف ولا يعد عدده بمعنى اننى اخترت اى صنف من المستلزمات واخترت عدده 3 مثلا الكود يرى الصنف مرة واحدة ولا يرى عدده




28-08-2017 12:55 صباحا
مشاهدة مشاركة منفردة [3]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
أخي طائع الكود يستغرق وقت فلما لا تقوم بربط الكود بزر وتنفذه في الوقت الذي تحتاج إلى البيانات منه فقط ..
بالنسبة للنقطة الثانية ..عدلت الكود في المشاركة السابقة ..جرب مرة أخرى




28-08-2017 01:10 صباحا
مشاهدة مشاركة منفردة [4]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
 
 
  الخطأ.rar   تحميل rar مرات التحميل :(6)
الحجم :(72.012) KB





28-08-2017 01:22 صباحا
مشاهدة مشاركة منفردة [5]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
لم يظهر معي هذا الخطأ على ملفك المرفق .. هل تجرب الكود على ملف آخر ..؟

عموماً جرب وضع هذا السطر قبل بداية الحلقة التكرارية 
On Error Resume Next




28-08-2017 01:32 صباحا
مشاهدة مشاركة منفردة [6]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
اتقصد قبل هذا السطر 
 For i = 1 To UBound(b, 1)
  • لقد وضعت السطر الذى طلبت منى وتم المطلوب مع ثقل فى تنفيذ الكود  ولكنه تم المطلوب .....  اترك لحضرتك تعديل الكود للتخفيف ان أمكن 
  • رجاءا لا تنسى وضع التاريخ اوتوماتيكيا فى تكست بوكس التاريخ فى الفورم

 


تم تحرير المشاركة بواسطة :طائع
بتاريخ:28-08-2017 01:46 صباحا





28-08-2017 01:55 صباحا
مشاهدة مشاركة منفردة [7]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
لقد وضعت للتكست بوكس التاريخ 
Private Sub c6_Change()
Me.c6.Value = Format(Date, "yyyy/mm/dd")
End Sub
وتم المطلوب منه 

تبقى الشىء الاخير لاستيفاء العمل وهو عند وضعى للسطر On Error Resume Next هذا قبل الحلقة التكرارية ثقل الكود فى تنفيذ عمله 
فهل من حل 
تحياتى معلمى




28-08-2017 08:41 صباحا
مشاهدة مشاركة منفردة [8]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
إن شاء الله بعد العودة من التدريب سأحاول النظر في الموضوع إن شاء الله إلا إذا تدخل أحد الأخوة الكرام بالمنتدى




29-08-2017 12:12 صباحا
مشاهدة مشاركة منفردة [9]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
موفق ان شاء الله




29-08-2017 04:41 مساء
مشاهدة مشاركة منفردة [10]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
ما زلت أحاول في موضوعك ولكني أشك في أن الملف بهذا الشكل يصعب التعامل معه بشكل كبير .. هل بالفعل ستحتاج لكل هذا العدد من الأعمدة ..؟؟!




29-08-2017 07:03 مساء
مشاهدة مشاركة منفردة [11]
طائع
menu_open
عضو مشارك
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 26-08-2017
رقم العضوية : 193
المشاركات : 46
الجنس : ذكر
تاريخ الميلاد : 10-5-1978
يتابعهم : 3
يتابعونه : 1
قوة السمعة : 68
الاعجاب : 0
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
اخى ياسر عدد الاعمدة اكثر من ذلك ولكنى اكتفيت بهذا العدد لعدم توسيع المدى اكثر من ذلك لأن الحالة تستمر أكثر من 15 يوم وكل يوم تقريبا تأخذ من 5 الى 8 مستلزم فلهذا السبب الاعمده كثيرة 
أجهدت حضرتك ولكن ان صعب ذلك على سيادتكم فسأكتفى بآخر حل للموضوع والله غالب 
تحياتى معلمى




29-08-2017 07:15 مساء
مشاهدة مشاركة منفردة [12]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 8997
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 22
يتابعهم : 0
يتابعونه : 460
قوة السمعة : 26664
الاعجاب : 671
 offline 
look/images/icons/i1.gif تحويل المعادلة الى كود لتخفيف البرنامج
لما لا تقوم بالاكتفاء ببعض الأعمدة فقط وتكرر اسم العميل كلما أردت التعامل معه ؟ بحيث يكون التعامل مع الصفوف بشكل أكبر أما الأعمدة فتكون محدودة ..
هذا مجرد اقتراح ...






المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
تنفيذ المعادلة من VBA بدلا من الخلية محمد أبو حفصة
20 849 YasserKhalil
تعديل مسار بالمعادلة صلاح الصغير
16 836 YasserKhalil
استبدال المعادلة الموجودة بمعادلة أخف وأسهل مهند محسن
18 980 Eslam Abdullah
كيفية التغيير في نطاق المعادلة وزيادة المدى أبو يوسف النجار
3 847 YasserKhalil
تحويل المعادلة المستخدمة إلى كود أحمد يوسف
24 1662 Eslam Abdullah

الكلمات الدلالية
لا يوجد كلمات دلالية ..


 








اخلاء مسئولية: يخلى منتدى أكاديمية الصقر للتدريب مسئوليته عن اى مواضيع او مشاركات تندرج داخل الموقع ويحثكم على التواصل معنا ان كانت هناك اى إنتهاكات تتضمن اى انتهاك لحقوق الملكية الفكرية او الادبية لاى جهة - بالتواصل معنا من خلال نموذج مراسلة الإدارة .وسيتم اتخاذ الاجراءات اللازمة.
سياسة النشر: التعليقات المنشورة لا تعبر عن رأي منتدى أكاديمية الصقر للتدريب ولا نتحمل أي مسؤولية قانونية حيال ذلك ويتحمل كاتبها مسؤولية النشر.

الساعة الآن 07:12 مساء

أعلن هنا
أعلن هنا
أعلن هنا