電子書籍の厳選無料作品が豊富!

Accessで体力テストの作成をしております。
体力テストの結果をフォーム上に入力して、その結果を基に各項目の点数を付けます。
男女別で点数表がありそれを基に点数を付けるのですが、どのように設定していいものかわかりません。わかる方がいましたらご教授ください。よろしくお願いします。
下記が具体例になります。

氏名:アクセス太郎
握力
結果  右:40  左:45

点数表  男性    女性    点
    0~30   0~18   1
31~35  19~24   2 
36~40  25~39   3
41~45  30~34   4

得点:右 3点  左 4点 ←のように表示したいです。

A 回答 (2件)

一行の式でも頑張れば書けますが、、、


以下のような関数書いて、クエリで呼び出すのが良いと思います。
Function GripScore(Sex,intResult) as integer
if Sex = "男性”
select case intResult
case 0 to 30
GripScore = 1
case 31 to 35
gripscore = 2
case 36 to 40
gripscore = 3
case 41 to 45
gripscore = 4
case else
gripscore = 5
end select
else
select case intResult
case 0 to 18
GripScore = 1
case 19 to 24
gripscore = 2
case 25 to 29
gripscore = 3
case 30 to 34
gripscore = 4
case else
gripscore = 5
end select
end function

男性の場合は12引いて、同じ判定でスコア出すことも可能です。
19引いて、div5(5で割ったときの整数値を求めて)スコア出しても良いですが、例外判定(そのままだとマイナスになったり想定外の値が出たりすること)をどうせ組み込まなくてはいけないので、わかりやすい形でやっておいたほうが後々良いのかなと思います。
    • good
    • 0

> 男女別で点数表があり


テーブルですよね。
 
抽出クエリを使えばいいのではないですか。
https://tasukete-access.com/2021/02/14/accessint …
    • good
    • 0

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