-
Posts
4358 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
48
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو بن علية حاجي
-
تحويل دالة SUMPRODUCT إلى كود VBA
بن علية حاجي replied to Eid Mostafa's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله إخواني الكرام، لما رأيت مشاركات أخي الحبيب خبور حفظه الله من كل سوء سعدت كثيرا وسيتم حل المسألة بإذن الله... والكود (ويبقى ثقيلا في التنفيذ) الذي كنت قد حضرته في هذا الشأن يشبه كثيرا كود أخي خبور ... Sub hben() Application.ScreenUpdating = False For J = 3 To 28 For I = 4 To 160 If J Mod 2 = 1 Then Cells(I, J) = Evaluate("SumProduct(( Name = B" & I & ")*(Month =" & Cells(1, J) & ")* Madine)") Else Cells(I, J) = Evaluate("SumProduct(( Name = B" & I & ")*(Month =" & Cells(1, J) & ")* Daine)") End If Next I Next J Application.ScreenUpdating = True End Sub وأسألك أخي خبور عن أمر فكرت فيه مليا (لمعرفتك أكثر بالأكواد) : هل يمكن إنشاء جدول (مصفوفة) عن طريق VBA نخزن فيها نتائج المعادلات ثم بعد الانتهاء منها نقوم بلصقها في النطاق المطلوب من الورقة؟؟؟ أخوكم بن علية -
تحويل دالة SUMPRODUCT إلى كود VBA
بن علية حاجي replied to Eid Mostafa's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم مصطفى، في الحقيقة لم أتوقف عن التفكير في مسألتك وقد قمت بتحضير كود يقوم بالتعويض الذي طلبته لكن للأسف بقي تنفيذ هذا الكود ثقيلا... ولا زلت أفكر وأبحث عن الحل المناسب والسريع إن لم يجد أحد فطاحلة الأكواد حلا لها قبل هذا... وآسف جدا لعدم التوصل للحل... أخوك بن علية -
(تمت الاحابة) إستخراج رقم الاحاد والعشرات في خانات منفصلة
بن علية حاجي replied to ابو ذكري's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم هذه معادلات أخرى لتنويع الحلول... للأحاد: =INT(MOD(A3/1;10)) للعشرات: =INT(MOD(A3/10;10)) للمئات: =INT(MOD(A3/100;10)) للآلاف: =INT(MOD(A3/1000;10)) وهكذا... أخوكم بن علية -
السلام عليكم ورحمة الله أخي الكريم أعتقد أن الخلل في المعادلة هو أنه تم إدخال القيم (وخاصة 06:00 و 08:30) على شكل نص باستعمال "" ومعادلة الجمع لا تعتبر النص... لذا أقترح عليك ضرب المعادلة في 1 أي إضافة 1* إلى المعادلة فتصبح المعادلة في الخلية J3: =IF(WEEKDAY(B3;16)=7;0;IF(WEEKDAY(B3;16)=6;"06:00";"08:30"))*1 =1*IF(WEEKDAY(B3;16)=7;0;IF(WEEKDAY(B3;16)=6;"06:00";"08:30")) مع تطبيق تنسيق الوقت hh:mm على هذه الخلايا... ولست أدري كيف تعمل معك الدالة WEEKDAY بالمدخل 16 لأنها لا تقبل إلا 1 (أو فراغا) أو 2 أو 3؟ أخوك بن علية
-
السلام عليكم ورحمة الله أخي الكريم، هذا حل أول باستعمال الدالة SUMPRODUCT (إن كنت قد فهمت المطلوب).... أخوك بن علية متابعة الأقساط.rar
-
(تمت الاجابة) دالة معرفة لعد الارقام من رقم الى رقم
بن علية حاجي replied to خالد الشاعر's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم، إضافة إلى ما وضعه أخي الحبيب أبو أحمد جزاه الله عنا خير الجزاء أقترح أيضا المعادلات التالية بفرض أن العددين موجودين في الخليتين A1 و B1: المعادلة الأولى : =Max(A1:B)-MIN(A1:B1)+1 المعادلة الثانية : =ABS(A1-B1)+1 أو ببساطة (المعادلة الثالثة): =أكبر عدد - أصغر عدد + 1 وفي مثالنا : =155 - 150 + 1 والله أعلم -
السلام عليكم ورحمة الله أخي الكريم، إن الرمز "'" في المعادلة هو عبارة عن إضافة العلامة ' (نصية أي بين " ") والعلامة ' يجب وضعها في المعادلات بالنسبة لأسماء الشيتات المركبة من كلمتين أو أكثر (واحدة أمام اسم الشيت وأخرى في نهايته قبل علامة ! ) إذا كان يفصل بين هذه الكلمات علامة من العلامات النصية أو فراغات (عدا العلامة _ ) وبالنسبة للملف الذي يخصك فأسماء الشيتات المستعملة تحوي العلامة - (ناقص) ولذا تجدني وضعت في المعادلة (مثلا) "'"&C$2&"'!$C:$C" الذي تعني : 'Jan-2011'!$C:$C إذا كانت الخلية C2 تحوي الكلمة Jan-2011 الذي هو اسم شيت (مركب) من الشيتات في الملف... والله أعلم
-
السلام عليكم ورحمة الله أخي الكريم، إن الرمز "'" في المعادلة هو عبارة عن إضافة العلامة ' (نصية أي بين " ") والعلامة ' يجب وضعها في المعادلات بالنسبة لأسماء الشيتات المركبة من كلمتين أو أكثر (واحدة أمام اسم الشيت وأخرى في نهايته قبل علامة ! )ويفصل بين هذه الكلمات علامة من العلامات النصية أو فراغات (عدا العلامة _ ) وبالنسبة للملف الذي يخصك فأسماء الشيتات المستعملة تحوي العلامة - (ناقص) ولذا تجدني وضعت في المعادلة (مثلا) "'"&C$2&"'!$C:$C" الذي تعني : 'Jan-2011'!$C:$C إذا كانت الخلية C2 تحوي الكلمة Jan-2011 الذي اسم شيت (مركب) من الشيتات في الملف... والله أعلم
-
اخوانى برجاء تعديل هذه المعادله
بن علية حاجي replied to blackhorse123's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم، الملف بالداخل ما فيه مطلوب.... بن علية -
السلام عليكم ورحمة الله أخي الكريم، إذا كنت تريد أن تطبق التنسيق العام على الخلية التي تحوي معادلة تحويل الدقائق إلى ساعات فأقترح عليك استعمال المعادلة التالية: =(INT(A2/60)&","&MOD(A2;60))*1 أخوكم بن علية
-
السلام عليكم ورحمة الله أخي الكريم، هذا حل آخر باستعمال الدالة SUMPRODUCT في الملف المرفق مع بعض الإضافات (إضافة سطر بالأعلى لترقيم الأشهر، إضفاة بعض التسميات لنطاقات ضرورية....) أخوكم بن علية Statement of Account (21.12.11).rar
-
السلام عليكم ورحمة الله أخي الكريم يمكن أيضا استعمال المعادلة التالية: =TEXT(INT(A2/60)&":"&MOD(A2;60);"hh:mm") أخوك بن علية
-
السلام عليكم ورحمة الله أخي الكريم، يمكن استعمال المعادلة التالية: =TIME(INT(A2/60);(A2/60-INT(A2/60))*60;0) بفرض أن الخلية A2 تحوي القيمة 290 مع استعمال تنسيق الوقت hh:mm على الخلية التي وُضعت فيها المعادلة... والمعادلة تعطي النتيجة 04:50 يجب مراعاة الفاصلة والفاصلة المنقوطة في المعادلة حسب الجهاز... والله أعلم
-
اخوانى الاعضاء برجاء الرد على مشكلتى
بن علية حاجي replied to blackhorse123's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم ، الخلل في المعادلة التي وضعتها في ملفك أنها لا تعتير الشروط المطلوبة إذ أن الجزء منها index(mohamed;2;4) يعطي دائما مضمون الخلية الموجودة في السطر الثاني والعمود الرابع من النطاق mohamed أي مضمون الخلية D6 الذي هو 10 باعتبار أن النطاق mohamed هو A5:Z25 من ورقة "مبيعات الفرع"... وقد تم في الملف المرفق تعديل في النطاق mohamed من A5:Z25 إلى A1:Z25 وتعديل المعادلة باستعمال الدالتين INDEX و MATCH وإن شاء الله تكون التعديلات مستوفاة للمطلوب... أخوك بن علية استدعاء بيانات بتاريخ معين.rar -
السلام عليكم ورحمة الله أخي الكريم ، هذا حل أول باستعمال الدالة IF في الملف المرفق... أخوك بن علية المصنف1.rar
-
(تمت الاجابة) تعديل كود طباعة الكل
بن علية حاجي replied to الذيب 2015's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم، قم تم إضافة معادلة في العمود الأول (العمود A) من الورقة "التحضير اليومي" للترقيم التسلسلي التلقائي (ضروري لمعرفة عدد البيانات الفعلية) وباستعمال الكود التالي الذي يقوم بتغيير الأرقام في القائمة المنسدلة بالخلية B7 مع التحديث ثم الطباعة: Sub PRINT_ALL() Dim I As Integer Set xx = Application.WorksheetFunction mm = xx.Max(Sheets("التحضير اليومي").Range("A:A")) For I = 1 To mm If I <= mm Then [B7] = xx.Index(Sheets("التحضير اليومي").Range("B:B"), xx.Match(I, Sheets("التحضير اليومي").Range("A:A"), 0)) ActiveWindow.SelectedSheets.PrintOut Copies:=1 End If Next I End Sub أتمنى أن يكون في الملف المرفق كل المطلوب... أخوك بن علية PRINT111.rar -
السلام عليكم ورحمة الله أخي الكريم تم تغيير المعادلات حسب المطلوب... أخوك بن علية جلب بيانات.rar
-
السلام عليكم ورحمة الله أخي الكريم ، التنسيق الذي وضعته موجود من ضمن التنسيقات على التاريخ بتصرف طفيف، وعمله يقوم بكتابة اسم شهر لتاريخ معين بالإنجليزية (كما ذكر أخي الحبيب عبد الله) ومن ثلاثة حروف الأولى... والله أعلم أخوكم بن علية
-
(تمت الاجابة) حل مشكلة البحث باكثر من شرط
بن علية حاجي replied to عبد العزيز كمال's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم، أستسمح أخي الحبيب يحيى وأضيف معادلات مطبقة مباشرة على الملف... بالنسبة لمعادلة الحساب بالفترة فهي طويلة بعض الشيء ثم هي معادلة صفيف ويمكن أن تعمل هذه المعادلة لفترة شهر باختيار الشهر البداية والشهر النهاية نفسه... أتمنى أن تفي المعادلات بالغرض... أنظر الملف المرفق... أخوك بن علية تجميع شهري.rar -
السلام عليكم ورحمة الله أخي الكريم ، جرب المعادلة التالية (تجدها في المرفق): =TEXT(C3;"[$-400C]mmm")&" ("&IF(DAY(C3)<=15;"1st Half)";"2nd Half)") أخوك بن علية Date_req.rar
-
السلام عليكم ورحمة الله أخي الكريم قمت بتفييرات على المعادلات في الملف المرفق... 12345.rar
-
(تمت الإجابة) دالة جمع فيها كلمة غائب
بن علية حاجي replied to محمد عبد القادر's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم، إذا لم يكن هناك شروط أخرى للحساب في حالة الغياب ، يمكن استعمال المعادلة التالية: =SUM(A2;B2) أخوك بن علية -
(تمت الإجابة) كيفية تحديث الخلية مع التاريخ والوقت
بن علية حاجي replied to wafir's topic in منتدى الاكسيل Excel
السلام عليكم ورحمة الله أخي الكريم ما دمت تريد أن يكون تحديث آلي للقسط اليومي أي كلما مضى يوم يزيد مبلغ القسط اليومي الى خلية (المجموع اليومي للمصروفات) يجب فعلا أن تضيف خلية لتاريخ الكراء (وقد وضعته في الخلية الصفراء بالملف المرفق) والمعادلة المستعملة للتحديث الآلي تكون كما يلي: ثمن القسط الشهري + ثمن القسط اليومي * (تاريخ اليوم - تاريخ الكراء) أي أن المعادلة في الملف تكون: =G7+H7*(TODAY()-J7) حيث: G7 تحوي "ثمن القسط الشهري" ، H7 تحوي "ثمن القسط اليومي" و J7 تحوي "تاريخ الكراء" والله أعلم Classeur1.rar