非常感谢您的所有反馈。我能够获得一些咨询帮助,以弄清楚如何以更易读的格式编写 launguge。我的公式仍然无法正常工作。
这是我的 VBA 代码:
'ENVIRONMENTAL - RIDER BERKLEY SURETY GROUP PREMIUM
Range("EnviroBerkley_Grand_Total").Select
'->>>>>>>>>>> InsertRows ---- >>>>>>>>>>>>>
iRow = ActiveCell.Row
getRows = 7
nRows = getRows
i = iRow - 1 'first row for insertion
Rows(i & ":" & i + nRows - 1).Insert
'<<<<<<<<END Insert Rows----------<<<<<<<<<<
Range("EnviroBerkley_Grand_Total").Select
ActiveCell.Offset(-15, 0).Rows("1:7").EntireRow.Select
Selection.Copy
ActiveCell.Offset(7, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Rider"
ActiveCell.Offset(1, 0).Range("A1").Select
Range("EnviroBerkley_Grand_Total").Select
ActiveCell.Offset(-7, 2).Range("A1").Select
'FIRST 100,000 (100)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(R[-1]C[-2]<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))-((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2,0))," & _
"(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,(Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)*R11C2,100))),IF(ActiveCell.Offset(R[-1]C[-2])<>""Original"",(IF((((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000," & _
"(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))-((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2,0)),(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)*R11C2,100))))"
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 400,000 (400)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(R[-2]C[-2]<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,0,(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))" & _
"-(Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C)*R11C2)<100000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,400,((((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)" & _
"-1000)*R11C2))))),IF(R[-2]C[-2]<>""Original"",(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,0,(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))" & _
"-(Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,400," & _
"(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-1000)*R11C2))))))"
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,000,000 (2000)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(ActiveCell.Offset(R[-3]C[-2])<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<500000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>2000000,0," & _
"(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<500000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,2000," & _
"(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-5000)*R11C2))))),IF(R[-3]C[-2]<>""Original"",(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<500000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>2000000,0," & _
"((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>500000,2000," & _
"((((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-1000)*R11C2))))))"
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,500,000 (2500)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(R[-4]C[-2]<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<2000000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>5000000,0,(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))" & _
"-(Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<2000000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>5000000,2500,((((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-20000)*R11C2)))))," & _
"IF(R[-4]C[-2]<>""Original"",(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<2000000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>2500000,0,(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))" & _
"/1000)*R11C2))),(IF((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>2500000,2500,((((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-1000)*R11C2))))))"
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,500,000 (2500)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(ActiveCell.Offset(R[-5]C[-2])<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<5000000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,0,(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))" & _
"-(Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2))),(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<5000000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,2500,((((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C)/1000))-50000)*R11C2)))))," & _
"IF(R[-5]C[-2]<>""Original"",(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<5000000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,0,((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))/1000)*R11C2)))," & _
"(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<100000,0,IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>5000000,2500,((((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))/1000)-1000)*R11C2))))))"
ActiveCell.Offset(1, 0).Range("A1").Select
'OVER 7,500,000 (7500)
ActiveCell.FormulaR1C1 = _
"=IF(EnviroCalculate_Premium_Using_Bond_Amount=""Y"",IF(R[-6]C[-2]<>""Original"",(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<7500000,0,IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,(((Range(EnviroBondAmountGrandTotal)..ActiveCell.Offset(R[-2]C))" & _
"-(Range(EnviroBondAmountGrandTotal)..ActiveCell.Offset(R[-3]C))-*R11C2)/1000),(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(EnviroBondAmountGrandTotal.ActiveCell.Offset(R[-3]C))*R11C2)/1000)))),(IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<7500000,0," & _
"IF(((Range(EnviroBondAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,((((Range(EnviroBondAmountGrandTotal).Select.ActiveCell.Offset(R[-2]C))*R11C2)-7500000)/1000))))),IF(R[-6]C[-2]<>""Original"",(IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)<7500000,0," & _
"IF(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)>7500000,(((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))-(Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-3]C))*R11C2)/1000),(((Range(EnviroContractAmountGrandTotal).Select.ActiveCell.Offset(R[-2]C))-(Range(EnviroContractAmountGrandTotal).Select.ActiveCell.Offset(R[-3]C))" & _
"*R11C2)/1000)))),IF(((Range(EnviroContractAmountGrandTotal).Select.ActiveCell.Offset(R[-2]C))*R11C2)<7500000,0,IF(((Range(EnviroContractAmountGrandTotal).Select.ActiveCell.Offset(R[-2]C))*R11C2)>7500000,((((Range(EnviroContractAmountGrandTotal).ActiveCell.Offset(R[-2]C))*R11C2)-7500000)/1000)))))"
ActiveCell.Offset(1, 0).Range("A1").Select
我也尝试过写成 IF 语句:
'ENVIRONMENTAL - RIDER BERKLEY SURETY GROUP PREMIUM
Range("EnviroBerkley_Grand_Total").Select
'->>>>>>>>>>> InsertRows ---- >>>>>>>>>>>>>
iRow = ActiveCell.Row
getRows = 7
nRows = getRows
i = iRow - 1 'first row for insertion
Rows(i & ":" & i + nRows - 1).Insert
'<<<<<<<<END Insert Rows----------<<<<<<<<<<
Range("EnviroBerkley_Grand_Total").Select
ActiveCell.Offset(-15, 0).Rows("1:7").EntireRow.Select
Selection.Copy
ActiveCell.Offset(7, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Rider"
ActiveCell.Offset(1, 0).Range("A1").Select
Range("EnviroBerkley_Grand_Total").Select
ActiveCell.Offset(-7, 2).Range("A1").Select
'FIRST 100,000 (100)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset.Range(-1, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then ActiveCell = 0
If ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then
ElseIf (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) / 1000) * R11C2 Then ActiveCell = 100
If (ActiveCell.Offset(-1, -2)) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then
If (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0) / 1000) * R11C2 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then
ElseIf (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) / 1000) * R11C2 Then ActiveCell = 100
End If
End If
End If
End If
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 400,000 (400)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset(-2, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 500000 Then ActiveCell = 0
ElseIf ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 500000 Then ActiveCell = 400
ElseIf (((Range("EnviroBondAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
If ActiveCell.Offsett(-2, -2) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 500000 Then ActiveCell = 0
ElseIf (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) - (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 100000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 500000 Then ActiveCell = 400
ElseIf (((Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,000,000 (2000)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset(-3, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 500000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 2000000 Then ActiveCell = 0
ElseIf ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 500000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 2000000 Then ActiveCell = 2000
ElseIf (((Range("EnviroBondAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
If ActiveCell.Offsett(-3, -2) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 500000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 2000000 Then ActiveCell = 0
ElseIf (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) - (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 500000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 2000000 Then ActiveCell = 2000
ElseIf (((Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,500,000 (2500)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset(-3, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 2000000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 5000000 Then ActiveCell = 0
ElseIf ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 2000000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 5000000 Then ActiveCell = 2000
ElseIf (((Range("EnviroBondAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
If ActiveCell.Offsett(-3, -2) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 2000000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 5000000 Then ActiveCell = 0
ElseIf (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) - (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 2000000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 5000000 Then ActiveCell = 2000
ElseIf (((Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
'NEXT 2,500,000 (2500)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset(-3, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 5000000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 0
ElseIf ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 5000000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 2000
ElseIf (((Range("EnviroBondAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
If ActiveCell.Offsett(-3, -2) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 5000000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 0
ElseIf (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) - (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 5000000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 2000
ElseIf (((Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
'OVER 7,500,000 (7500)
ActiveCell.Select
If EnviroCalculate_Premium_Using_Bond_Amount = "Y" Then
If ActiveCell.Offset(-3, -2) <> "Original" Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 7500000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 0
ElseIf ((Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) - Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) < 2000000 Then ActiveCell = 0
If (Range("EnviroBondAmountGrandTotal").Select.ActiveCell.Offset(-2, 0) * R11C2) > 5000000 Then ActiveCell = 2000
ElseIf (((Range("EnviroBondAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
If ActiveCell.Offsett(-3, -2) <> "Original" Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 7500000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 0
ElseIf (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) - (Range("EnviroContractAmountGrandTotal").Select.ActiveCell.Offset(-3, 0)) / 1000) * R11C2 Then
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) < 7500000 Then ActiveCell = 0
If (Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) * R11C2) > 7500000 Then ActiveCell = 2000
ElseIf (((Range("EnviroContractAmountGrandTotal").ActiveCell.Offset(-2, 0) / 1000) - 1000) * R11C2) Then
End If
End If
End If
ActiveCell.Offset(1, 0).Range("A1").Select
无论我做什么,我都无法在活动单元格中返回值。从前一行复制的任何公式都保留下来,我似乎无法正确获取公式。
帮助!!!!请!!!!
这是我写的第一个宏。我正在尝试自学,但遇到了一个又一个的障碍。
干杯,金