重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

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

会員テーブルの会員種別をみて会費を割引いた額を求めようとしています。(会費から期間で割引く)
ID  会員種別 会員期間  会費
 1    A    5   300円
 2    B    4   400円
 3    C    3   500円
 4    D    3   600円
 5    A    3   300円
ID1の場合は種別がAなので会費300円で、
300円-300円*5%(5は会員期間)
ID2の場合は種別がBなので会費400円で、
400円-400円*4%(4は会員期間)
という感じで、種別ごとに固定額があり期間に応じて
割引という計算をさせたいのです。種別は4種類で
今後計算を見直す可能性があります。
EXCELならIF文で書いてしまうところですが、
可能ならばSQLで書かずに式ビルドの記述で
対応したいので、よろしくご教授ください。

A 回答 (2件)

モジュールで処理するのが シンプルで良いと思います。


種別が何種類あるのかわかりませんが
A~Dまでと 仮定しますね。

Function Kaihi(Shubetu as string,Kikan as Integer) as Currency
Dim Kingaku as Currency

Select Case Shubetu
Case "A"
Kingaku=300
Case "B"
Kingaku=400
Case "C"
Kingaku=500
Case "D"
Kingaku=600
End Select
Kaihi=Kingaku-Kingaku*(Kikan/100)

End Function
動作確認はしていませんが こんな感じでいけると思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。この方法ならば、今後金額や割引率を見直すときにも修正が簡単にできそうです。
自分以外の担当者が修正することも想定して、この
方法で作成してみました。
実際はもう少し複雑なのですが、caseで分岐させて
いるので計算式も加工しやすかったです。
ありがとうございました。

お礼日時:2005/05/10 15:35

会費が決まっていて会員期間で割引くのでしたらテーブルに会員種別まで入力されている状態ならIIfを使わないで出来るのでは?(会員種別によって割引率の会員期間に変数を使うようではないので)


式ビルダで単純に
=[会費]-([会費]*([会員期間]/100))
で割引かれた金額を求められます。
    • good
    • 0

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