プロが教える店舗&オフィスのセキュリティ対策術

あるアクセルテーブルの列に、1~360の数値が入っています。
※800件くらいある


これをIF関数/Format関数等を使って、クエリーを活用し以下ルールで数字を変換したいのですが、
できますでしょうか。
(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関数・式等には特にこだわらないです(クエリーで算出できればOK)。


お知恵をいただけるとたすかります。

A 回答 (2件)

単純にだと



1つ目:IF([フィールド名]<=0,0,MIN(INT(([フィールド名]-1)/30),12))

2つ目:IF([フィールド名]<=0,0,MIN(INT(([フィールド名]-1)/30),13))
    • good
    • 0
この回答へのお礼

応用ききますね。試してみます(感謝!)。

お礼日時:2014/10/20 13:25

(1+29)/30=1


(30+29)/30=1.9666

(1+29)/30+(30*1/30)=1+1
(30+29)/30+(30*1/30)=1.9666+1
 :
 :
(1+29)/30+(30*N/30)=1+N
(30+29)/30+(30*N/30)=1.9666+N

変換して求めたい値は、いずれも上記の計算で求まる商に一致する。(多分)
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2014/10/20 15:51

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