コード内から、特定の基準に基づいて、数式を特定のセルに割り当てようとしています。コードを見る
For l = 8 To lEND
lPriorNum = .Range("N" & l)
If lPriorNum = 1 Then
sFormula = "=ROUND(IF(AND(N" & l & "=1,K" & l & "=0),O" & l & _
"/100*M" & l & ",(IF(AND(N" & l & "=1,K" & l & "<>0,K" & l & _
"<M" & l & "),K" & l & ",M" & l & "))),2)"
Else
sFormula = "=ROUND(IF(P" & l & "=0,0,(IF(AND(N" & l + 1 & _
"<>1,K" & l + 1 & "<>0,M" & l + 1 & ">R" & l + 1 & _
"),K" & l + 1 & ",(IF(AND(N" & l + 1 & "<>1,K" & l + 1 & _
"<>0,P" & l & ">0,P" & l & "<K" & l + 1 & "),+P" & l & _
",(IF(AND(N" & l + 1 & "<>1,K" & l + 1 & "=0,P" & l & _
"<=0),0,(IF(O" & l + 1 & "/100*SUM(M" & l + 1 & "-L" & l & _
")>M" & l + 1 & ",0,(IF(O" & l + 1 & "/100*SUM(M" & l + 1 & _
"-R" & l & ")<M" & l + 1 & ",O" & l + 1 & "/100*SUM(M" & l + 1 & _
"-R" & l & "),(IF(M" & l + 1 & "<=R" & l + 1 & ",IF(P" & l + 1 & _
"-K" & l + 1 & "<0,0,+M" & l + 1 & "-K" & l + 1 & ")))))))))))))),2)"
End If
.Range("L" & l).Select
Selection.NumberFormat = "0.00"
ActiveCell.Formula = sFormula
Selection.NumberFormat = "0.00"
' Total Payout Available
sFormula = Range("Tot_Pay_Avail").Formula
.Range("P" & l).Select
Selection.NumberFormat = "0.00"
ActiveCell.Formula = sFormula
Selection.NumberFormat = "0.00"
' Final Dist Running Bal
sFormula = Range("Final_Dist_RB").Formula
.Range("Q" & l).Select
Selection.NumberFormat = "0.00"
ActiveCell.Formula = sFormula
Selection.NumberFormat = "0.00"
sFormula = Range("Payout_Amt_Sum").Formula
.Range("R" & l).Select
Selection.NumberFormat = "0.00"
ActiveCell.Formula = sFormula
Selection.NumberFormat = "0.00"
sFormula = vbNullString
Next l
lPriorNum = 1 の場合、L を設定するコードは正常に機能します。lPriorNum が 1 でない場合、次の式は sFormula にあり、これは機能しません。1004 エラーが発生します。
=ROUND(IF(P9=0,0,(IF(AND(N10<>1,K10<>0,M10>R10),K10,(IF(AND(N10<>1,K10<>0,P9>)) 0,P91,K10=0,P9<=0),0,(IF(O10/100*SUM(M10-L9)>M10,0,(IF(O10/100*SUM(M10-R9))
この数式は、Excel 2010 でのみ機能するように書かれていると言われ、2007 年にテストしていますが、2010 年のユーザーがこれをテストすると同じエラーが発生します。この数式または構文の書き方の問題は何でしょうか? スプレッドシートのセルは、コンマなしで小数点以下 2 桁の数値として書式設定されています。ここや他のウェブサイトのいくつかの投稿を見てきましたが、私の質問は他の投稿よりも具体的かもしれません...
助けてくれてありがとう