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

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

قام بنشر

السلام عليكم

تحية طيبة للجميع

 

عندي معادلة صفيف في النطاق "H7:H26"  تبدأ من الصف 7 إلى الصف 26

{=IF(OR(ISBLANK(C7:G7)),"",ROUND(SUM(C7,D7,E7,F7,G7),0))}

  المطلوب تحويها لكود vba

حيث

  • يتم تنفيذ كود المعادلة في النطاق "H7:H26" بدون إستخدام الأمر .FillDown
  • تحويل خلايا النطاق إلى قيم .Value بدلا من معادلات
  • يتم تحديث ناتج المعادلة تلقائي  عند إدخال أو تغيير المعطيات  ( بالضبط كما تعمل المعادلة بنفسها )

يا ريت الكود كاملا ولكم الشكر

المثال مرفق

 

 

 

 

Book100.zip

قام بنشر

جرب هذا الماكرو

Option Explicit
Sub Formula_to_constante()
Dim My_Rg As Range
Dim x, y As Integer
Set My_Rg = Range("b7").CurrentRegion

x = My_Rg.Rows.Count
y = My_Rg.Columns.Count

Set My_Rg = My_Rg.Offset(2).Resize(x - 2, y - 1)
Range("h7:h" & x + 4).ClearContents

Cells(7, y + 1).FormulaArray = "=IF(OR(ISBLANK(C7:G7)),"""",ROUND(SUM(C7:G7),0))"
Range("h7:h" & x + 4).Value = Range("h7:h" & x + 4).Value
End Sub

 

  • Like 1
قام بنشر

أشكرك أخي سليم على الرد الكود ممتاز

 

هل يمكن أن يعمل الكود تلقائي بمجرد أدخال المعطيات لعملية الجمع

لأن الكود الحالي لا يعمل تلقائي

 

بإنتظارك أخي ولك الأجر

قام بنشر

لفائدة اكثر

هل ممكن شرح الكود اذا حبيت أتوسع في الملف واضيف معادلات اخرى

وماذا يعني كل سطر وما فائدة الأرقام 1+ و 4+ و1- و2- للصفوف  والأعمدة 

وجازاك الله خيرا وزادك علما

 

  

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

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

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
×
×
  • اضف...

Important Information