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

معادلة جمع شرطي معرفة جديدة


الردود الموصى بها

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

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

معادلة جمع معرفة جديدة.zip

رابط هذا التعليق
شارك

السلام عليكم

اخي الكريم

قرأت الشرح في الملف مرتين

و اعتقد و الله اعلم ان الدالة SUMPRODUCT تحقق المطلوب في طلبك

 

ولكن

 

لاادري ماهي وجهة نظرك في رفض الدالة SUMPRODUCT

رابط هذا التعليق
شارك

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

بعد إذن الأستاذ أحمد الزمان

أنا لم افهم السؤال جيدا أنت لا تريد أن تعمل بالدوال العادية وتريد إنتاج الدالة جديدة بثوابت آخر

أما تريد الحل بطرق أخرى فقط     ماذ تريد ؟

تقبل تحياتي

رابط هذا التعليق
شارك

استاذي/ احمد زمان

استاذي/ عطاء الله 

انه لشرف كبير مروركم الكريم علي الموضوع تحياتي لكم

الحقيقة ان الدالة المطلوبة تستخدم علي نطاق واسع جدا وعند استخدام  معادلة SUMPRODUCT تثقل الملف بشكل غير طبيعي وتجعل الملف بطئ الحركة وفي نفس الوقت لا يوجد حلول بدوال الجمع الاخري وملخص الموضوع انني اريد انتاج دالة جديدة تحقق ما تحققه الداله SUMPRODUCT وتتلافي عيوب اثقالها للملف وتفضلو مني قبول فائق الاحترام والتقدير .

رابط هذا التعليق
شارك

السلام عليكم

المعادلة المطلوبة بالكود لن تحل مشكلة البطىء

لان البطىء متعلق بحجم قاعدة البيانات وعدد المعادلات المستخدمة للجمع في الملف

 

والله اعلم

رابط هذا التعليق
شارك

استاذي القدير/ عبد الله باقشير

تحياتي اليك

عند استخدامي لمعادلة SUMPRODUCT ولو معادلة واحدة فقط في خلية واحدة فقط تكون الحركة داخل الجدول الخاص بالبيانات والذي يتعلق بالمعادلة

تكون الحركة بطيئة للغاية ولا اعلم ما السبب عند اسيتخدام تلك المعادلة لما تتباطئ الحركة هكذا وليس العيب في الملف ففي جميع الملفات يحدث هذا معي دائما والبديل

بالنسبة لي هي معادلة معرفة توازي تلك المعادلة --- واشكرك استاذي لمرورك علي موضوعي واتمني مساعدتك جزاك الله خيرا .

رابط هذا التعليق
شارك

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

 

بعد اذن استاذي الكبير عبدالله باقشير

 

الحل لطلبك تجدة في مشاركات الأستاذ الكبير عبدالله باقشير

1- استخدم Sumproduct بالكود

2- تحويل المعادلات الى اكواد

 

مع التحية

رابط هذا التعليق
شارك

للاسف هذا ايضا لا ينفع لان المعادلة سوف يتم تركيب معادلات اخري عليها فبالتالي لابد ان يتم استخدام معادلة

حتي يتم تركيب المعادلات الاخري عليها -- للاسف استاذي احمد زماني لقد مريت علي كافة الحلول ولم اجد لذلك بديلا ...

شكرا لك اخي الحبيب احمد زمان علي اهتمامك بالموضوع لك مني استاذي بالغ الاحترام

تم تعديل بواسطه modi basha
رابط هذا التعليق
شارك

اريد حلا :smile2::mad:

 

الأخ الكريم/ modi basha

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

أعتقادي أنه هناك دائما حل لكل شيء - وفي معظم الأحوال أكثر من حل

قرأت موضوعك عدة مرات - ولا أدعي أنني قد فهمت مقصدك بشكل كامل

أنت تريد معادلة جديدة غير المتعارف عليها - بدائل المعادلات دائما هي بأحد طريقتين ( إحداهما معادلات أيضا ) :

الأولي : تركيب المعادلات مع بعضها بشكل متناغم يؤدي الغرض باقل عبء علي المعالج لغرض السرعة في البحث والتنفيذ

الثانية : عمل كود يؤدي نفس مهام المعادلة أيضا بأقل قدر من عمليات البحث والمقارنات والعمليات الحسابية المختلفة لغرض السرعة

ثم هناك جوانب أخري تتعلق بترتيب مدخلاتك وبياناتك نفسها لتسهل عمل المعادلة - وغيرها تتعلق بحجم الملف وكمية البيانات به التي قد تجعل

أي عملية صغيرة تأخذ وقت طويل .

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

في اقل وقت ممكن - ( معادلة جديدة = كود )

تقبل تحياتي

رابط هذا التعليق
شارك

استاذي حمادة باشا تحياتي لك

كل ما اريده هو تعريف دالة جديدة تقوم باداء المهمة المطلوبة كما هو مبين بالمرفق وللتبسيط اريد تعريف دالة تقوم بنفس مهمة دالة Sumproduct

ولا اعرف كيف يصعب فهم المطلوب فهو واضح جدا ان يتم تعريف دالة جديدة بواسطة الاداة Function

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

رابط هذا التعليق
شارك

السلام عليكم

 

ما دمت ما زلت تعتقد ان المعادلة المعمولة بالكود ستحل مشكلتك

 

تم عمل معادلة الصفيف kh_SumIf

 

اضغط F2 لتحرير الصيغة ثم اضغط CTRL+SHIFT+ENTER

 

بامكانية استخدام شرط او اكثر بحد اقصي  254 شرطا

Option Explicit
'=============================================
'=============================================

Function kh_SumIf(SumRange As Range, ParamArray Condition1() As Variant) As Double
Dim Sm As Double
Dim x As Integer, xx As Integer, xxx As Integer
Dim iCont As Long, i As Long

xx = UBound(Condition1)

If xx = -1 Then GoTo kh_Err

iCont = SumRange.Rows.Count

For i = 1 To iCont
    xxx = 1
    For x = 0 To xx
        xxx = xxx * IIf(CBool(Condition1(x)(i, 1)), 1, 0)
    Next
    If xxx Then Sm = Sm + Val(SumRange.Cells(i, 1))
Next

kh_SumIf = Sm
kh_Err:
End Function

جربها

 

تحياتي

  • Like 2
رابط هذا التعليق
شارك

العلامة الكبير استاذنا / عبد الله باقشير

يا سيدي اوفت الغرض وزيادة

بارك الله فيك

من فضل الله وعنايته ان حبانا الله اياك

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

انار الله طريقك كما تنير طريقنا وسدد خطاك وقدرك علي مزيد من الخير جزاك الله خيرا استاذي

واتأسف علي سوء ادبي في طلبي هذا ان اسأت وعن الحاحي في حاجتي ان الححت .

رابط هذا التعليق
شارك

العلامة الكبير استاذنا / عبد الله باقشير

يا سيدي اوفت الغرض وزيادة

بارك الله فيك

من فضل الله وعنايته ان حبانا الله اياك

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

انار الله طريقك كما تنير طريقنا وسدد خطاك وقدرك علي مزيد من الخير جزاك الله خيرا استاذي

واتأسف علي سوء ادبي في طلبي هذا ان اسأت وعن الحاحي في حاجتي ان الححت .

 

الحمد لله رب العالمين

جزاكم الله خيرا واثابكم بدعائكم واعطاكم بمثله اضعاف مضاعفة

تقبلوا تحياتي وشكري

  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

 

أستاذي القدير خبور هل يمكن شرح الكود يعني أين  هو نطاق الجمع وأين هي الشروط

 

شاهد المرفق 2010

معادلة جمع معرفة جديدة.rar

  • Like 1
رابط هذا التعليق
شارك

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

استاذنا القدير و الخبير عبدالله باقشير

جزاك الله خيرا

 

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

 

جزاكم الله خيرا

 

تقبلوا تحياتي وشكري

رابط هذا التعليق
شارك

ماشاء الله عليك أستاذى ماأروع أعمالك

جزاك الله عنا خير الجزاء ، وجعلك معلما لنا

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

ربنا يبارك لنا فيك

تقبل تحيات : تلميذك المحب لكل أعمالك

رابط هذا التعليق
شارك

أستاذنا القيدير  / عبد الله باقشير

 

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

 

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

رابط هذا التعليق
شارك

أستاذنا الكبير/عبدالله باقشير

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

شاركت في الموضوع بغرض إقناع أخونا/ modi basha بأن الكود هو الحل

وقد بدأت في تجهيز function مناسب لطلبه - ولكن بعد إرفاقكم للكود ( إنتهي الأمر )

قمة الإحترافية - وجزاكم الله كل خير

  • Like 1
رابط هذا التعليق
شارك

جزاك الله خيرا استاذنا المحترم حمادة باشا

انه لشرف كبير اهتمامك بالموضوع ومحاولتك ايجاد حل

فقط يكفيني شرف اهتمامك تحياتي لك ولكل عباقرة المنتدي الرائع بقيادة استاذنا عبد الله باقشير

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information