アプリ版:「スタンプのみでお礼する」機能のリリースについて

あるエクセルの列(セル)に、1~360の数値が入っています。


これをIF関数を使って(別のセルで)以下ルールで数字を変換したいのですが、
できますでしょうか。
(2種類を検討したい)

■1つ目

1~30・・・・1
31~60・・・2
61~90・・・3
91~120・・4
121~150・・5
151~180・・6
181~210・・7
211~240・・8
241~270・・9
271~300・・10
301~330・・・11
331以上~・・・12



■2つ目

1~30・・・・1
31~60・・・2
61~90・・・3
91~120・・4
121~150・・5
151~180・・6
181~210・・7
211~240・・8
241~270・・9
271~300・・10
301~330・・・11
331~360・・・12
361以上~・・・13


※IF関数にはこだわらないです(xls内で算出)。

A 回答 (5件)

例えば、A1セルの数値を変換してB1セルに表示する場合、



■1つ目
B1セルに
=IF(INT((A1-1)/30)+1 >12,12,INT((A1-1)/30)+1)

■2つ目
B1セルに
=IF(INT((A1-1)/30)+1 >13,13,INT((A1-1)/30)+1)



他にも方法はあると思いますが、ご参考まで。
    • good
    • 0
この回答へのお礼

おおおーーーー早っ!ありがとうございます。

お礼日時:2014/10/20 12:08

Aに元の値が入っていて、Bに一つ目、Cに二つ目の値をいれると仮定します。


この表では12と13の表記に変化があるだけなので・・・


B1=IF(A1="","",IF(A1>330,12,IF(A1>300,11,IF(A1>270,10,IF(A1>240,9,IF(A1>210,8,IF(A1>180,7,D1)))))))
C1=IF(A1>360,13,B1)
D1=IF(A1>180,"",IF(A1>150,6,IF(A1>120,5,IF(A1>90.,4,IF(A1>60,3,IF(A1>30,2,1)))))))



後はA~D列をそのまま下の行へコピペすればOK
    • good
    • 0
この回答へのお礼

早っ!ありがとうございます。

お礼日時:2014/10/20 12:09

「1~360の数値が入っています。

」と、ありながら2つ目では361以上が入っているのは謎ですが、式としては以下で良いと思います。

#数値がA1に入っている前提です

■1つ目(数値が1~360の場合)
=ROUNDUP(A1/30,0)

■2つめ(361以上の数値が有る場合)
=MIN(ROUNDUP(A1/30,0),13)

この回答への補足

mt2008様

一つ目なのですが、361が入った場合、12で出てほしいのに13になります。
すみません。1つ目も360以上が入ることがあります。


2つ目は13以上になっているので大丈夫なのですが。



1つ目を361以上を12で表現できませんか。

補足日時:2014/10/20 12:14
    • good
    • 0
この回答へのお礼

=MIN(ROUNDUP(A1/30,0),12)



1つ目はこれでしょうか?!

お礼日時:2014/10/20 12:17

ANo.3です。



> 1つ目を361以上を12で表現できませんか。

で、あれば2つ目の式に近い物になります(13→12にしただけ)
=MIN(ROUNDUP(A1/30,0),12)
    • good
    • 0

0以下のときは0表示でいいのでしょうか?



1つ目
=IF(A1<=0,0,MIN(CEILING(A1,30)/30,12))

2つ目
=IF(A1<=0,0,MIN(CEILING(A1,30)/30,13))
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!