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

بن علية حاجي

الخبراء
  • Posts

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

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

  • Days Won

    48

كل منشورات العضو بن علية حاجي

  1. السلام عليكم ورحمة الله أخي الكريم، في الملف المرفق تجد الكود الذي يجيب على مطلوبك مطبق على الورقة "كيميا" يقوم بإخفاء صفين (الصف والصف الذي تحته وليس الذي فوقه وقد تم إضافة الصف 49 بارتفاع صغير) من السطر 14 إلى السطر 49 حسب مضمون خلايا العمود D في الصفوف الزوجية من 14 إلى 49 (أي الصفوف 14، 16، 18، 20، ...) ويقوم بطباعة الورقة بعد إخفاء الصفوف حسب الشروط المطلوبة ثم يعيد إظهار كل الصفوف التي تم إخفاؤها من الصف 14 إلى الصف 49... أرجو أن يكون هذا المطلوب أو جزء منه... أخوك بن علية 1.rar
  2. السلام عليكم ورحمة الله أخي الكريم، وهذا حل آخر باستعمال دالتي INDEX و MATCH تم عمله على ملف أخي الحبيب رجب جازاه الله عنا كل الخير... بارك الله فيك أخي الحبيب محمود وحفظك من كل سوء... أخوكم بن علية البدلات والمراتب_3.rar
  3. السلام عليكم ورحمة الله أخي الكريم، تستعمل الدالة ABS (دالة القيمة المطلقة) والتي اقترحها أخي الحبيب محمود مع الأعداد (ليس مع النصوص) وتعطي هذه الأعداد بقيم موجبة... في الملف الذي أرفقته قمتَ بإدخال عدد بالإشارة السالبة على شكل نص لذا أعطتك الدالة ABS خطأ... واقترحت عليك الدالة SUBSTITUTE التي جعلتها تستبدل الإشارة "-" بلا شيء (أي تقوم بحذفها) في التنسيقين (نص أو عدد) وضربت الناتج بالعدد 1 لتنسيقه كعدد (باعتبار أن هذه الدالة تعطي تنسيق نص)... وضعت في الملف المرفق بعض الأمثلة... أخوك بن علية 1.rar
  4. السلام عليكم ورحمة الله أخي الكريم، جرّب المعادلة التالية: =1*SUBSTITUTE(A1;"-";"") أخوك بن علية
  5. السلام عليكم ورحمة الله إخوتي الكرام، جازاكم الله كل خير وبارك الله فيكم وفي علمكم وعملكم، أردت بهذا الرد التنبيه فقط إلى أن الدالة SUMPRODUCT في الأصل هي دالة صفيف ولكن لا تحتاج -في كثير من الأحيان- إلى تأكيدها بوساطة الضغط على : Ctrl+Shift+Enter .... والله أعلى وأعلم أخوكم بن علية
  6. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، بعودتك إلى الموضوع ذكرتنا بأيام رمضان الكريم، تقبل الله منا ومنكم صيامه وقيامه ومن سائر الأمة الإسلامية وأعاده الله علينا جميعا باليمن والخير والبركات... بالنسبة لطلبك تم تعديل على المعادلات (معادلات ورقات الشهور) لتتماشى مع المطلوب مع وضع مثال في الملف المرفق... وإجابة على تساؤلك (القديم) فيما يخص القصد من الاقتراح "يستحسن حفظ الملف بصيغة .xlsb بدلا من الصيعة .xlsm" لأن الصيغة xlsb. تقبل الملفات التي تحوي أكوادا ثم إن حفظ الملفات بهذه الصيغة يكون حجمها أصغر بكثير منها بالصيغ الأخرى (تقريبا ثُلث الصيغة xlsm. وعُشر الصيغة xls.) (هذا مجرد رأي)... الملف المرفق للمعادلات المعدلة: Social Insurance (2012).rar أخوك بن علية
  7. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى قمت بتبسيط المعادلات حسب ما فهمته من المطلوب لأنه تم إلغاء فترة التسديد بين تاريخين وأصبح التسديد لكل الرصيد في تاريخ معين... واستعملت دالة ABS لجعل كل المبالغ المسددة بقيم موجبة بدلا من ضرب الناتج في العدد -1.... أرجو أن يكون هذا المطلوب أو بعضا منها وإذا كان غير ذلك فأرجو الشرح أكثر حتى نكون على دراية بما ستكون عليه المعادلات لتتناسب مع المطلوب... أخوك بن علية Accrued Exp. Settlement.rar
  8. السلام عليكم ورحمة الله أخي الكريم، وأستسمح أخي الحبيب محمود في إعطاء حلين آخرين: الحل الأول : بمعادلة صفيف باستعمال الدوال SUM و IF و TRANSPOSE تأخذ الشكل التالي: =SUM(IF($C6:$F6="h";TRANSPOSE({1;0;0;1}))) والحل الثاني : باستعمال الدالتين SUMPRODUCT و TRANSPOSE تأخذ الشكل التالي: =SUMPRODUCT(($C6:$F6="h")*TRANSPOSE({1;0;0;1})) شرح بسيط للمعادلات : تقوم بعدّ خلايا العمود الأول والعمود الرابع التي تحقق شرط أي التي مضمونها حرف h (ويفسرها العددان 1 في الدالة TRANSPOSE الموضوعان في الرتبتين الأولى والرابعة بين الحاضنتين) في النطاق C6:F6 من أربعة أعمدة (أي الخليتين C6 و F6). أرجو أن يكون هذا الشرح مفهوما... لا تنسى أن المعادلة الأولى (في الحل الأول) هي معادلة صفيف أي يجب تأكيدها بالضغط على : ctrl+shift+enter أخوكم بن علية تطبيق المعادلات في الملف المرفق التالي: h.rar
  9. السلام عليكم ورحمة الله أخي الكريم بوعلام، وأستسمح أحبتي الكرام لأقدم حلا آخر باستعمال معادلة صفيف بالدالتين INDEX و SMALL... أخوكم بن علية توزيع التلاميذ حسب المادة.rar
  10. السلام عليكم ورحمة الله أخي الكريم أبو أنس، نتيجة المربع بالأعلى تتغير لا محالة (بالأجزاء العشرية) لأنك تقوم باستبدال بعض القيم القريبة من الصفر بالعدد 0 وهذا يؤثر قليلا على المجموع في هذا المربع... قمت بتغيير طفيف على كود أخي الكريم أبو نصار وكانت النتيجة تختلف في الجزء العشري (العدد بعد الفاصلة) للمجموع : المجموع قبل الاستبدال كان جزؤه العشري 81 والمجموع بعد الاستبدال أصبح جزؤه العشري 91... أعتقد أن النتيجة متقاربة جدا ومقبولة... والكود بعد التغيير هو: Sub L_ali() Dim t As Range Application.ScreenUpdating = False For Each t In Range("L6:L60000") If Abs(Int(t)) <= 1 And t.Value <> Empty Then t.Value = 0 End If Next Application.ScreenUpdating = True End Sub وهذا الكود يعمل دون الدالة المخصصة المرفقة مع الكود الذي أرسله أخي الحبيب أبو نصار... أرجو أني وفقت في مقاربة الحل... أخوك بن علية
  11. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، هذا حل ثان بمعادلات مباشرة (لا تعتمد على جداول إضافية) في الملف المرفق.... أخوك بن علية Correct equation extraction beginning of the quarterly periods_2.rar
  12. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، هذا حل أول بمعادلات غير مباشرة (تعتمد على جداول إضافية) في الملف المرفق وسأفكر إن شاء الله في معادلات مباشرة... أخوك بن علية Correct equation extraction beginning of the quarterly periods.rar
  13. السلام عليكم ورحمة الله أخي الكريم، ضع المعادلة التالية في الخلية F7 واسحبها إلى الأسفل... بالفرنسية: =SI($E7>=10;"ينتقل";SI($D7>16;"يوجه";"يعيد")) بالإنجليزية: =IF($E7>=10;"ينتقل";IF($D7>16;"يوجه";"يعيد")) أخوك بن علية
  14. السلام عليكم ورحمة الله أخي الكريم أبو ريم، بعض المعادلات أضيفت في الملف بالاستعانة بعمودين إضافيين أحدهما لعدد التكرارات لكل رقم حساب والآخر لترتيب هذه التكرارت... أرجو أن يكون العمل بالملف مقبولا ومستوفيا بعضا من المطلوب... أخوك بن علية. الحسابات المكررة.rar
  15. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، ذكرت لك سابقا أن لا حرج بيننا ويمكنك طلب ما تريد في أي وقت تريد فستجدني إن شاء الله في الخدمة بما أستطيعه وأعرفه... بالنسبة للخلل الذي ذكرته في ملفك الأخير قد تنبهت إليه مباشرة بعد إرسال الملف وهي الحالة التي تكون فيها فترة التقسيط بين تاريخين محصورين بين بداية شهر ونهاية الشهر نفسه وقد تنبهت لموضع الخطأ في المعادلة وقمت بتصحيحه لذلك لم أتعب كثيرا في التفكير في الطلب الذي ورد في ردك وتجد في الملف المرفق تصحيحا للخطأ... أرجو أن تراقب الملف جيدا علني قد أخطأت في المعادلة وهذا راجع لطولها وكثرة الشورط فيها (ربما لا تمسح جميع الحالات الخاصة بطريقة التقسيط حسب الفترات)... أخوك بن علية Prepaid Exp. Settlement 3.rar
  16. السلام عليكم ورحمة الله أخي الكريم عيد مصطفى، قمت ببعض التغييرات على المعادلات الخاصة بالأشهر وعدد أيام كل شهر وإضافة شهور السنة الموالية... تم إضافة معادلة (طويلة بعض الشيء لعله يمكن تبسيطها) التي تقوم بحساب أقساط الشهور حسب الفترات المدرجة في العمودين C و D والمبالغ المحجوزة في العمودين F و G. ويمكن مقارنة نتائج هذه المعادلات مع ما قمتَ بحسابه بطريقة يدوية في ملفك المرفق (بداية من السطر 8 والملونة بالأصفر)... أعتقد أن المعادلات (رغم طولها) قد أوفت المطلوب... أرجو أني وفقت في تقريب المطلوب... وإذا كان هناك تساؤلات أخرى أو بعض الأخطاء في المعادلات فستجدني بإذن الله في الخدمة في كل حين... أخوك بن علية Prepaid Exp. Settlement.rar
  17. السلام عليكم ورحمة الله أخي الكريم، لإضافة نطاق مسمى في إكسيل 2007 أو 2010 نختار القائمة Formulas ثم من Names Manager نختار Define Name ونتبع الخطوات الموالية (اختيار الاسم، إدراج النطاق أو معادلة النطاق وغيرها)... راقب الرابط التالي لعله يفيدك في المطلوب http://www.myonlinetraininghub.com/excel-2007-named-ranges-explained ... والنطاق المختار يكون من ورقة Accounts... قبل إنشاء الكود في حدث هذه الورقة يستحسن وضع كل معادلات الترحيل في ورقة Accounts لئلا يقوم الكود بإخفاء كل الصفوف ولا يمكنك إظهارها إلا بعد تعطيل... يمكن وضع الكود في Module وإنشاء زر لتنفيذ الكود وهذا يسمح لك بالتحكم في إظهار وإخفاء الصفوف التي ليست فيها حركة... أرجو أني وفقت في الشرح ومعذرة على التأخر في الإجابة لخلل في النت عندي... أخوك بن علية
  18. السلام عليكم ورحمة الله أخي الكريم، هذا حل آخر مطبق على ملف أخي الحبيب محمود... أخوك بن علية Book4.rar
  19. السلام عليكم ورحمة الله أخي الكريم أحمد، إذا كنت تستعمل نسخ أوفيس 2007 فما فوق، فيكفي استعمال خاصية "حفظ باسم" وستجد من بين أنواع الملفات PDF... أما إن كنت تستعمل نسخة أوفيس 2003 فيلزمك تنصيب أحد برامج (وهي كثيرة) تحويل الملفات إلى PDF فيتم تنصيب طابعة PDF وفي هذه الحالة نقوم بطباعة ملف الإكسيل باختيار هذه الطابعة باستعمال "الطباعة في ملف"... والله أعلم أخوك بن علية
  20. السلام عليكم ورحمة الله أخي الكريم، المشكل في ملفك ليس له علاقة بتحديث البيانات المرتبطة وإنما بما يسمى بـ "المرجع الدائري" مما يعني وجود على الأقل معادلة في خلية معينة مرتبطة بالخلية نفسها أو بخلايا أخرى مرتبطة بهذه الخلية... وهذا موجود في ملفك في ورقة "التحصيل اليومي" في الخلية O1 حيث تجد المعادلة : i=O1 وهذا نوع من المراجع الدائرية (ناتج هذه المعادلة هو 0 مع رسالة الخطأ التي تظهر كل مرة)، وهو الخطأ الوحيد في ملفك... والله أعلم أخوك بن علية
  21. السلام عليكم ورحمة الله أخي الكريم، هذا حل آخر باستعمال كود بسيط وُضع في كود حدث الورقة Accounts أي أنه يعمل تلقائيا بمجرد القيام بتغييرات على الملف أو حتى التنقل داخل الملف ودائما يقوم بالتحديث يقوم بإظهار كل الصفوف المخفية ثم يعيد مباشرة بإخفاء الصفوف التي ليست بها حركة.... والكود هو كما يلي: Private Sub Worksheet_Selectionchange(ByVal Target As Range) Application.ScreenUpdating = False Cells.EntireRow.Hidden = False For Each cell In [Plage] If cell + cell.Offset(0, 1) = 0 Then cell.EntireRow.Hidden = True Next Application.ScreenUpdating = True End Sub أخوك بن علية وفي الملف المرفق تجد ملفين واحد لإكسيل 2003 والآخر للإصدارات التي بعده.... يومية.rar
  22. السلام عليكم ورحمة الله أخي الحبيب دغيدي، الدالة ADRESS تعطي مرجعا (عنوانا) لخلية حسب الوسائط المستعملة مع الدالة وصيغتها كما يلي: =ADRESS(Row_Num, Column_Num, [Type], [a1], [Sheet_Name]) شرح الوسائط: * Row_Num : رقم السطر (ضروري) * Column_Num : رقم العمود (ضروري) * Type : (غير ضروري) نوع المرجع وهي رقم من 1 إلى 4 حسب ما يلي: 1 أو فراغ : مرجع مطلق مثل 1$A$ 2 : مرجع مطلق للسطر مثل A$1 3 : مرجع مطلق للعمود مثل A1 $ 4 : مرجع نسبي مثل A1 * a1 : قيمة منطقية (غير ضروري)، TRUE أو فارغة: للترميز لعمود الخلية بحرف وسطرها برقم مثل A1 و FALSE : للترميز لعمود وسطر برقم مثل L1C1 (المرجع المطلق في هذا الترميز هو رقم دون قوسين والمرجع النسبي هو رقم بين قوسين)... * Sheet_Name : (غير ضروري) اسم الشيت بين علامتي التنصيص "" إذا أردنا أن يُذكر اسم الشيت في المرجع مثل Sheet1!A1 أو غيرها أمثلة : =ADRESS(2;4) تعطي المرجع : D$D$2$ =ADRESS(2;1;3) تعطي المرجع : A2$A2 =ADRESS(2;1;3;FALSE) تعطي المرجع : L(2)C1 =ADRESS(5;3;;;"SHEET1") تعطي المرجع : SHEET1!$C$5 ويمكن إعطاء أمثلة أخرى حسب الشرح بالأعلى... أرجو أني وُفقت في إعطاء شرح بسيط للدالة ADRESS ولزيادة في الفهم يمكن الاستعانة بما يقدمه الإكسيل في Help الذي يخص هذه الدالة... ملاحظة: في عبارة الدالة ينبغي التأكد من الفاصلة المنقوطة أو الفاصلة بين وسائط هذه الدالة حسب نسخة الأوفيس... أخوك بن علية
  23. السلام عليكم ورحمة الله أخي الكريم أبو أنس، لم أجد أي مشكل في المعادلات التي وضعتها حتى وإن قمت بما طلبته مني (تغيير القيم أو تغيير الأسماء)... لست أدري ما حدث معك ربما خاصية "الحساب التلقائي" عندك غير مفعلة أو ربما بعض النطاقات المدرجة في المعادلات غير محددة من السطر إلى السطر ما لا يقبله إكسيل 2003 في بعض الأحيان (الملف والمعادلات تعمل جيدا في النسخ المتقدمة للإكسيل)... المهم قمت ببعض التغييرات على المعادلات في الملف (لاستخراج جميع البيانات التي رصيدها هو أصغر رصيد في حالة وجود بيانات أصغر رصيد لها متساوي).... مع إضافة بعض التنسيقات التجميلية... أخوك بن علية الملف المرفق الجديد : استخراج اصغر قيمة مع أهمال الصفر_2.rar الملف المرفق السابق بعد تغيير في المعادلات لتتماشى مع إكسيل 2003 : استخراج اصغر قيمة مع أهمال الصفر.rar
  24. السلام عليكم ورحمة الله أخي الكريم، والله أكواد رائعة من إخوة رائعين بارك الله فيكم جميعا... هذا حل آخر باستعمال المعادلات (وقد تجد فيه إجابة على تساؤلك الأخير "أرغب في تحديد بداية صف الجمع من خلال خلية معينة في الشيت")... أخوك بن علية الجمع بمعلومية خلايا.rar
  25. السلام عليكم ورحمة الله أخي الكريم أبو أنس، هذا حل أول باستعمال معادلات صفيف (دون أعمدة إضافية) في الخلايا الصفراء بالملف المرفق... في خلية الاسم نضع المعادلة التالية: =INDEX(B:B;MATCH(MIN(SI($D:$D<>0;$D:$D));$D:$D;0)) وفي خلية المبلغ نضع المعادلة: =INDEX(D:D;MATCH(MIN(SI($D:$D<>0;$D:$D));$D:$D;0)) ولا تنسى تأكيدهما بالضغط على: CTRL + SHIFT + ENTER أخوك بن علية استخراج اصغر قيمة مع أهمال الصفر.rar
×
×
  • اضف...

Important Information