|
チョコさん,こんにちわ。
>G1に入力した式です→=IF(B1<3,"1",IF(B1<6,"2",IF(B1<9,"3",IF(B1<12,"4",IF(B1<15,"5",IF(B1<18,"6",IF(B1<21,"7",IF(B1<24,"8",IF(B1<27,"9",IF(B1<32,"10",""""""""""))))))))))
IF文のネストは7個までです。詳細はhelpに記載してます。
>>最大 7 つまでの IF 関数を 真の場合、偽の場合 としてネストすることにより、より複雑なテストを行うことができます。
んで,8個めのIF文でエラーって叱られてますね。
ということで,
上記コードは規則性があるので計算式で求めてみました。
(IF(B1<32,"10"は「B1<30」では?)
G1に =JIS(ROUNDDOWN(B1/3,0)+1)
丸付きの数字ではなく全角数字なので,丸付きにする場合は,
もうちょっと加工が必要ですね。
また,VBAっぽくマクロで行うなら,
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
With Range("G1")
Select Case Target.Value
Case Is < 3: .Value = "1."
Case Is < 6: .Value = "2."
Case Is < 9: .Value = "3."
Case Is < 12: .Value = "4."
Case Is < 15: .Value = "5."
Case Is < 18: .Value = "6."
Case Is < 21: .Value = "7."
Case Is < 24: .Value = "8."
Case Is < 27: .Value = "9."
Case Is < 32: .Value = "10."
End Select
End With
End If
End Sub
ってな感じですかね。
|
|