• ベストアンサー

ACCESSの数字の操作

宜しくお願いします。 ACCESSにて実年齢を表示している列があります。 その実年齢を17歳だったら"10代"とし、49歳だったら"40代"などとしたいです。区切りたい年齢はその時々で違うので、四捨五入ではなく任意で指定したいです。 excelでは、IIF関数で<=などを使用するイメージなのですが。。 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

区切りたい年齢幅を入力するテキストボックスを用意します。 =Int([実年齢]/[年齢幅])*[年齢幅] 年齢幅が10なら =Int(17/10)*10=10 =Int(49/10)*10=40 年齢幅が5なら =Int(17/5)*5=15 =Int(49/5)*5=45 になります。

その他の回答 (3)

noname#49904
noname#49904
回答No.4

=(DateDiff("m",[誕生日],Date())+(Day(Date())<Day([誕生日])))\12 & "歳" & (DateDiff("m",[誕生日],Date())+(Day(Date())<Day([誕生日]))) Mod 12 & "ヶ月" これは、現在年齢を表示するAccessの式です。「誕生日」というフィールドに記入された生年月日から○歳●ヶ月と出します。  この式を参考に、ご自分で変更してください。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

#1のmshr1962です。 #2の方のやり方ならIIfでネストするよりSwitch関数を使う方が簡単です。 =Switch([実年齢]<=9,"10歳未満",[実年齢]<=19,"10代",[実年齢]<=29,"20代",True,"30代以上")

  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.2

選択クエリの例 実年齢フィールドのあるテーブルを追加し、一番右に列を追加、フィールド欄に 年代: IIf([実年齢]<=9,"10歳未満",IIf([実年齢]<=19,"10代",IIf([実年齢]<=29,"20代","30代以上"))) として、クエリーを実行すると年代が表示されます。 頑張ってくださいヽ(^。^)ノ

関連するQ&A

  • ACCESSのRound関数について

    お世話になっております。 ACCESSのクエリでRound関数を使い、小数点以下を四捨五入した値を表示させようと思いましたが、なぜか 1876.5→1876 と表示されてしまいます。 同じ列のほかのセルはちゃんと四捨五入した値が表示され、5389.5 も 5390 のように表示されます。 どなたか思い当たる方原因を教えていただけますでしょうか。 よろしくお願いします。

  • Access2003で小数点第1位未満四捨五入

    Access2003で小数点第1位未満四捨五入の表示をするにはどうしたらいいのでしょうか?int関数を使用して平均点の四捨五入をしたのですが、整数エラーになります。Roundsも使ったり色々やったのですが、どうやら違うようなので、困っています。助けて下さ~い。

  • Excelで数字の表示に関して、任意の桁数で四捨五入させて表示させたい

    Excelで数字の表示に関して、任意の桁数で四捨五入させて表示させたいのですが、ROUND関数だと別のセルに表示となってしまいます。元のセルのままで表示させ方だけ変えるような方法はありますか?※関数でもいいのですが、とにかくセルは元のセルを使いたいです。Excel2007です。※但し、2003とかでも使うので2007のみの機能は不使用でお願いします。

  • ACCESSの複数条件での結果を表示

    今、貸アパートの水道料金請求のデータベースをACCESSで作っていますが、クエリで水道使用量:[先月検針]ー[今月検針]で当月の使用量まで出しました。使用料金:IIF(水道使用量]<100,とIIF関数を使おうと思ったんですが、これでは条件は1個しか指定出来ないですよね。使用料金は例えば、100未満が300円、100以上200までが400円と20個くらいに使用量によって、金額を変えて表示したいのです。IIF関数では、条件が1個しか指定できないのでしょうか?EXCELではAND関数とかを組み込むとたくさんの条件を指定できますが、ACCESSではどうすればいいのでしょうか?LOOKUP関数みたいなのがあるのでしょうか?教えて下さい。

  • access2003と2007のRound関数について

    以前見た質問でround関数で四捨五入をするときは、 access97は銀行型の四捨五入をする access2000はround関数にバグがある という回答を見ました。 http://oshiete1.goo.ne.jp/qa3593239.html ちなみにaccess2003と2007はどうなんでしょうか? やはり四捨五入はint関数を使うほうが無難なのでしょうか? ご存知の方いらっしゃいましたらご教授下さい。 よろしくお願いします。

  • IF関数を短くする方法(階層が深すぎる)

    A列に任意の数値が入っています。 そのときB列に、 「A1<999」なら「A1×5.0」して四捨五入 「1000<A1<2000」なら「A1×4.0」して四捨五入 「2000<A1<3000」なら「A1×3.0」して四捨五入 「3000<A1<4000」なら「A1×2.0」して四捨五入 「4000<A1<5000」なら「A1×1.5」して四捨五入 「5000<A1<6000」なら「A1×1.0」して四捨五入 とした計算式を入れたいとおもってます。 IF関数にするとものすごく長くなってしまいます。 短くしたり、他に適応する関数はあるでしょうか? よろしくお願いいたします。

  • エクセルで計算して、例えば小数点第2位まで求めると1.36になった数字

    エクセルで計算して、例えば小数点第2位まで求めると1.36になった数字を 小数点第1位で表示すると四捨五入で1.4となったとします。この数字に1000を 掛けると1360と表示されます。表示されている1.4に1000を掛けるということで 1400と表示するにはどのような関数を使用するのですか。 よろしくお願いします。

  • 四捨五入で計算された数字を、整数で返す関数を教えてください。

    エクセルで見積金額をだす時に、小数点以下非表示で計算すれば、100.4+100.9+100.4=301.7 302となります。 関数を使い小数点第1位四捨五入で、これを301にしたいのです。 小数点第一位を四捨五入して整数で返すと言うのでしょうか? (小数以下斬り捨てだと、300になります。INT関数がそうなのでしょうか?) すみません、関数がまだ良く分かりません。間違っていたり説明がまずかったなら、ごめんなさい。

  • エクセルで有効桁を指定して丸めることは出来る?

    excelで普通に四捨五入をするとなると 「ROUND」などで小数点以下の桁数を指定しますよね。 そうではなく、有効桁数3桁で四捨五入…例えば、 0.1234ならば0.123 1.234ならば1.23 12.34ならば12.3 123.4ならば123…のように 数字を四捨五入させる関数(?)はあるのでしょうか。

  • Access97のIIf関数について

    Access97のプログラミングで IIf関数について質問です。 sWK=IIf(a=1,IIf(b=1,か,き),い) のようにIIf関数の引数にさらに IIf関数を指定して使うことはできるのでしょうか?

専門家に質問してみよう