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

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

  • أفضل إجابة
قام بنشر

وعليكم السلام ورحمة الله تعالى وبركاته ..تفضل اخي

Sub ضياء_test1()
    LR = ActiveSheet.Cells(Rows.Count, "U").End(xlUp).Row
    ''''''''''''''''''''''''''''
    With Range("Z2:Z" & LR)
        .Formula = "=IF(U2=""رئيسي"",IF(X2>=200,X2*3.6*24,IF(X2<=40,X2*3.6*16,IF(X2<200,X2*3.6*20))),X2*3.6*24)"
        .Value = .Value
    End With
    With Range("AA2:AA" & LR)
        .Formula = "=IF(U2=""رئيسي"",IF(Y2>=200,Y2*3.6*24,IF(Y2<=40,Y2*3.6*16,IF(Y2<200,Y2*3.6*20))),Y2*3.6*24)"
        .Value = .Value
    End With
End Sub

او بهده الطريقة

Sub ضياء_test2()
    LR = ActiveSheet.Cells(Rows.Count, "U").End(xlUp).Row
    ''''''''''''''''''''''''''''
    With Range("Z2:Z" & LR)
        .Formula = "=IF(RC[-5]=""رئيسي"",IF(RC[-2]>=200,RC[-2]*3.6*24,IF(RC[-2]<=40,RC[-2]*3.6*16,IF(RC[-2]<200,RC[-2]*3.6*20))),RC[-2]*3.6*24)"
        .Value = .Value
    End With
    With Range("AA2:AA" & LR)
        .Formula = "=IF(RC[-6]=""رئيسي"",IF(RC[-2]>=200,RC[-2]*3.6*24,IF(RC[-2]<=40,RC[-2]*3.6*16,IF(RC[-2]<200,RC[-2]*3.6*20))),RC[-2]*3.6*24)"
        .Value = .Value
    End With
End Sub


وبهده الطريقة بالنسبة لحدث الشيت
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("x:y")) Is Nothing Then

lr = ActiveSheet.Cells(Rows.Count, "u").End(xlUp).Row
    ''''''''''''''''''''''''''''
    With Range("Z2:Z" & lr)
        .Formula = "=IF(U2=""ورقة1"",IF(X2>=200,X2*3.6*24,IF(X2<=40,X2*3.6*16,IF(X2<200,X2*3.6*20))),X2*3.6*24)"
        .Value = .Value
       
  
    End With
    With Range("AA2:AA" & lr)
        .Formula = "=IF(U2=""ورقة1"",IF(Y2>=200,Y2*3.6*24,IF(Y2<=40,Y2*3.6*16,IF(Y2<200,Y2*3.6*20))),Y2*3.6*24)"
       .Value = .Value
        
    End With

   End If
  
End Sub

حساب.xlsm

حساب _ حدث الشيت.xlsm

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

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

Important Information