اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

ارجاع قيمة خلية المجموع الى قيمه معينه؟؟


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

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

يوجد لدي كود في خليه يظهر مجموع الادخالات في الخلايا بعد ضربها ثم جمعها كالتالي :

=E4*10+F4*9+G4*8+H4*7

المطلوب هو كيف يمكن جعل مجموع الخليه التي تظهرالمجموع لا يتجاوز العدد ( 90 ) مثلاً واذا تجاوز هذا العدد يتم الخصم من الخلايا السابقه بالترتيب ابتداء من أول خليه ( لانه من الممكن ان تكون الخليه الأولى تحتوي على رقم أقل من الرقم المراد خصمه ) فإذا كانت الخليه الأولى لاتحوي العدد الكافي لخصمه ينتقل للخلية التاليه وهكذا حتى يتم الخصم من المدخلات اتمنى أكون وضحت الفكره 0

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

تم تعديل الكود فى هذه المشاركة فى مشاركة لاحقة

و تم ارفاق ملف جديد

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

- نسعد حقاً بأن يكون بيننا مثل هذه الخبرات .. دمت لنا ودام لنا علمك الواسع أستاذنا الكبير محمد طاهر

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

استاذنا الفاضل / محمد طاهر

شاكر لك جهدك وتفضلك بالرد على موضوعي وأرجو ان يتسع صدرك لتكرار السؤال

في الحقيقه طبقت الماكرو ولكن لم تكن النتيجه بالشكل المطلوب وأرفق لك مثال مشروح فيه الطريقه الكامله قبل وبعد تطبيق الماكرو .. تحياتي

تنزيل المثال الملف مضغوط بالون رار

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

حسب ما فهمت من شرحك الأخير

الكود لن يتدخل فى ناتج معادلة التقييم

و انما يتدخل فى عدد الطلقات لتغيير مجموعها فقط

قف فى الخلية التي بها مجموع الطلقات و شغل الماكرو التالي

Sub koko()

 Dim kk, m1, m2, m3, m4 As Integer

 m1 = ActiveCell.Offset(0, -4).Value
 m2 = ActiveCell.Offset(0, -3).Value
 m3 = ActiveCell.Offset(0, -2).Value
 m4 = ActiveCell.Offset(0, -1).Value
 kk = m1 + m2 + m3 + m4

  If kk > 80 Then
  
  Dim kkk As Integer
  kkk = kk - 80
    Select Case kkk
    Case Is < m1
      ActiveCell.Offset(0, -4).Value = (m1 - kkk)
    Case Is < (m1 + m2)
      ActiveCell.Offset(0, -4).Value = 0
      ActiveCell.Offset(0, -3).Value = (m1 + m2 - kkk)
    Case Is < (m1 + m2 + m3)
      ActiveCell.Offset(0, -4).Value = 0
      ActiveCell.Offset(0, -3).Value = 0
      ActiveCell.Offset(0, -2).Value = (m1 + m2 + m3 - kkk)
    Case Is < (m1 + m2 + m3 + m4)
      ActiveCell.Offset(0, -4).Value = 0
      ActiveCell.Offset(0, -3).Value = 0
      ActiveCell.Offset(0, -2).Value = 0
      ActiveCell.Offset(0, -1).Value = (m1 + m2 + m3 + m4 - kkk)
    End Select
  
  End If
End Sub

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

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

شاكر لك جهدك وفقك الله وجعله في موازين حسناتك . تحياتي

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

ـم التعديل فى الملف المرفق علي ملفك لتعمل المعادلة علي كل السجلات

اختار الخلايا الصفراء التي بها المجموع من أعلي الي أسفل

ثم شغل الماكرو

مع تحياتي

ghost-EquationItems.rar

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

استاذنا الفاضل ( محمد طاهر ) لانملك الا ان ندعي لك بدوام الصحه والعافيه وطول العمر في طاعة الله جزاك الله كل خير وجعل ماتقدمه من مساعده في موازين حسناتك .. تحياتي وشكري وتقديري

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

أشكركما كثيرا

أخي تلميذ الاكسيل

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

http://www.officena.net/ib/index.php?showtopic=3138

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

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information