アクセスIIF関数で条件式を作成

このQ&Aのポイント
  • ACCESSのif関数を使用して、dataAの数値に対して目標数80を超える場合はその数値に10を乗算し、未達の場合は0を返すような条件式を作成したい。
  • 未達の場合は0が返りますが、数値が80を超える場合は([dataA]-80)*10の式が表示されてしまいます。
  • どのようにすれば正しく計算させることができるでしょうか。
回答を見る
  • ベストアンサー

アクセスIIF関数

はじめまして。ACCESSのif関数について教えてもらいたいことがあります。 dataAの数値に対して、目標数80をこえればその数値分に10を乗算し、未達であれば、0を返すという条件式を行いたいのですが、うまくいきません。以下、自分がやっていたデータを記載します。 テーブル例 dataA 70 80 60 90 クエリ条件式 式1:IIF([dataA]>80,"([dataA]-80)*10","0") 未達については0が返るのですが、超えた場合(真の時)([dataA]-80)*10の式が表示されています。うまく計算させるには、どうしたらよいのでしょうか。ご教授よろしくお願いします。

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

  • ベストアンサー
  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

クォーテーションで囲めばそういう文字列になってしまいます 式1:IIF([dataA]>80,([dataA]-80)*10,0)

tettinn
質問者

お礼

CHRONOS_0さん。回答ありがとうございます。 ものすごく基本部分で間違ってましたね。穴があったら入りたい・・・ いままで、エクセルしか使ってこなかった分、がんばってアクセスを使いこなせるようになりたいと思いますので、今後ともよろしくお願いします。最後にあらためて、CHRONOS_0さん、本日は、ありがとうございました。

関連するQ&A

  • IF関数ではなくIIF関数を使うのでしょうか?

    なぜアクセスのクエリでIF関数を使う時は エクセルのようにIF関数ではなくIIF関数を使うのでしょうか? アクセスのクエリで条件分岐をしたいときはIIFを使っています。

  • クエリの一つのフィールドのIIF関数の限界は14個ですか?

    アクセス2003のクエリで たくさんの条件があり IIf(テーブル名!フィールド名,"正",IIf(・・・ と言う風に、IIF関数を14個までなら正常に動くのですが 15目になると「式が複雑すぎます」となってしまいます。 IIF関数の限界は14個なのでしょうか?

  • エクセルではIF関数なのにアクセスではIIF関数?

    なぜエクセルではIF関数なのにアクセスではIIF関数? IF関数はアクセスではIIF関数になりますが、 なぜ「I」が増えるのでしょうか? またIF関数はイフ関数と読みますが IIF関数は「イイフ」関数と読めばいいのでしょうか? よろしくお願い致します。

  • Accessでのiif関数について

    はじめまして。 Microsoft Accessの関数についての質問です。 例えばクエリの「商品名」の値AをBに置き換えたい場合、 =iif([商品名]=A,B)とします。 また、商品番号1000~9999まであるとして、1000~1999を抽出したい場合は、Like "1*" もしくは、Between 1000 And 1999 とします。 この時に 商品番号1000~1999を一律1000と置き換えたい場合、クエリでやるとしたらどのようにすれば良いのでしょうか。 イメージ的には =iif([商品番号]="1*",1000)なのですが、「"1*"」の部分をどうやってもうまくいきません。 どなたか詳しい方いらっしゃいましたらお教え頂けないでしょうか。 お忙しいところ申し訳ございませんが、宜しくお願い致します。

  • Accessの「IIF」に相当するSQL関数(ADOでOracleに接続時)

    Access2002からADO経由でOracleに接続し、データを取得しようと 思っています。 AccessのクエリやExcel関数では、「IIF」、「IF」で条件分岐が出 来ますが、SQLでこれに相当する関数はありますか? 具体的には、   ・日付A が 2007/08/01 ~ 本日 の間なら、「手配数」フィー ルドの数字を返す   ・日付Aが それ以外の期間なら、0 を返す というような事をしたいです。 DECODE関数がIF関数と似ているように思いますが、Between~And~ や、不等号での分岐が出来ないようなので困っています。 IIFやIF のように分岐条件を自由に設定できて、入れ子も出来るよ うな関数があれば教えてください。 よろしくお願いいたします!

  • Accessでの関数

    Access2002を利用しています。 Accessのクエリの中で、関数を利用し、例○○(条件)ならばAと表示し、そうでなければBとしなさいみたいな条件判断するような問題がありました。 私はIIF関数で求めたのですが、答えを見るとSwitch関数というのが使われていました。Switch関数というのがわからずに、Accessのヘルプで探そうとしたんですがん、表示してくれません。 この2つの関数 Switch関数とIIF関数の違いがわかりません。 出来れば、わかりやすく噛み砕いた表現で教えていただけませんでしょうか?

  • AccessのIIF関数

    Access2000のクエリで、 抽出:IIf(Left([品番],1)=2,Left([品番],4),Left([品番],7))という関数をフィールドに設定しました。 品番 2006aa123は、2006 h2006aa123は、h2006aa と各レコードに入るはずですが、2006aa123はちゃんと2006と入りますが、h2006aa123は、#ERRORになってしまいます。 なぜでしょうか? よろしくお願いします。

  • Access2013のIIF関数等について

    初めて質問させていただきます。 【経緯】 この度、Excelにてif関数を用いたデータ整理を行おうと考えていたのですが、データ量がExcelで快適に動作できる量を超えていたため、 タイトルにもあるように初めてAccessのIFF関数を用いて同様もしくは類似の動作が可能かどうかをお聞きしたく、質問致しました。 【データ(関数導入前)】 ID 数値1 数値2 数値3 検索値 解答 1  1000  2000  50   1500   2  3000  4500  10   1000   3  7500  9000  350    8000  このようなデータがあったと仮定し、数値1<検索値<数値2となるとき、 下記のような同行の数値3を解答の列に返すことはできるのでしょうか? 【データ(関数導入後)】 ID 数値1 数値2 数値3 検索値 解答 1  1000  2000  50   1500  50 2  3000  4500  10   1000   3  7500  9000  350    8000  350 Excelでしたら、IF関数を使用すればできることは知っているのですが Accessを使用して同じようなことができるのかが全く分からないので どなたかご教授いただければ幸いです。 何卒よろしくお願い申し上げます。

  • 自作関数でIF文はできないのか?

    SELECT テーブル1.ID, IIf([テーブル1]![ID]=1,"1です","1ではない") AS 1かどうか FROM テーブル1; というクエリ1を作成しました。 「IIf([テーブル1]![ID]=1,"1です","1ではない")」の部分を vbaのFunctionプロシージャーで記述したいのですがうまくできないです。 標準モジュールに Public Function IF文() IF文 = "IIf([テーブル1]![ID]=1,""1です"",""1ではない"")" End Function を作成し、 クエリ1のSQL文を SELECT テーブル1.ID, IF文() AS 1かどうか FROM テーブル1; としたら 「1かどうか」フィールドには関数式の結果ではなく、 関数式が文字列として表示されました。 (添付参照) 訳あって、 SQL文の一部をvbaで記載したいのですが上記のようなことは不可能でしょうか? ご教授よろしくお願い致します。

  • AccessのDcount関数の条件

    AccessのDcount関数に設定する条件ですが Switch関数やIIFなどは使用でじるのでしょう。 また、クエリ(select ~)も書くことができるのでしょうか。 設定できる場合は、どの様に記述すればよいのでしょうか。

専門家に質問してみよう