ahmed sherif قام بنشر مايو 8, 2021 مشاركة قام بنشر مايو 8, 2021 السلام عليكم كل عام وحضراتكم بخير اريد كتابة تلك المعادلات بواسطة vba application 1- IF(AND(ISNUMBER(I7),ISNUMBER(K7)),G7,"") 2- IF(AND(ISNUMBER(I7),ISNUMBER(K7),I7>K7),G7,"") 3- SUMPRODUCT(($bn$7:$bn$23=ca9)*($bo$7:$bo$23))+SUMPRODUCT(($bq$7:$bq$23=ca9)*($bp$7:$bp$23)) رابط هذا التعليق شارك More sharing options...
نزار سليمان عيد قام بنشر مايو 9, 2021 مشاركة قام بنشر مايو 9, 2021 Range("C3").Select ActiveCell.FormulaR1C1 = _ "=IF(AND(ISNUMBER(R[4]C[6]),ISNUMBER(R[4]C[8])),R[4]C[4],"""")" Range("C4").Select ActiveCell.FormulaR1C1 = _ "=IF(AND(ISNUMBER(R[3]C[6]),ISNUMBER(R[3]C[8]),R[3]C[6]>R[3]C[8]),R[3]C[4],"""")" Range("C5").Select ActiveCell.FormulaR1C1 = _ "=SUMPRODUCT((R7C66:R23C66=R[4]C[76])*(R7C67:R23C67))+SUMPRODUCT((R7C69:R23C69=R[4]C[76])*(R7C68:R23C68))" 1 رابط هذا التعليق شارك More sharing options...
ahmed sherif قام بنشر مايو 9, 2021 الكاتب مشاركة قام بنشر مايو 9, 2021 شكرا لحضرتك أستاذ نزار على هذا الحل جزاك الله خيرا لكن كنت اريد الحل بطريقة application بحيث تظهر قيم وليس صيغ معادلات رابط هذا التعليق شارك More sharing options...
أفضل إجابة سليم حاصبيا قام بنشر مايو 9, 2021 أفضل إجابة مشاركة قام بنشر مايو 9, 2021 البداية فقط لاول نطاقين من AE7 الى AE25 ثم تتابع الى باقي النطاقات كل نطاق حسب المعادلة المناسبة Sub From_Tornula_To_Vba() Const Ro = 23 With Sheets("Sheet1") .Range("AE7:AE" & Ro).Formula = _ "=IF(AND(ISNUMBER(I7),ISNUMBER(K7)),G7,"""")" .Range("AF7:AF" & Ro).Formula = _ "=IF(AND(ISNUMBER(I7),ISNUMBER(K7)),M7,"""")" .Range("AE7:AF" & Ro).Value = _ .Range("AE7:AF" & Ro).Value End With ''''''وهكذا الى نهاية النطاق End Sub من اجل الـــ SUMPRODUCT هذا الكود Option Explicit Sub From_SUMPRODUCT_To_Vba() Dim My_formula$, i As Byte, arr() My_formula = "=SUMPRODUCT(($BN$7:$BN$23=My_Cel)*($BP$7:$BP$23))+" My_formula = My_formula & "SUMPRODUCT(($BQ$7:$BQ$23=My_Cel)*($BO$7:$BO$23))" arr = Array("CA9", "CA13", "CA17") For i = LBound(arr) To UBound(arr) With Sheets("Sheet1").Range("CC9").Offset(4 * i) .Formula = _ Replace(My_formula, "My_Cel", arr(i)) .Value = .Value End With Next i End Sub 2 رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.