• ベストアンサー

アクセスの演算フィールドで

テーブルA レコード10件 氏名|出勤数 テーブルB レコード2件 氏名|年休数 クエリ 氏名|出勤数|年休数|[出勤数]+[年休数] このとき[出勤数]+[年休数]の列で、年休が登録されていない人の部分が空白になります。年休がある場合には合計数値が表示されます。 どのようにしたら、年休がない人も数値が表示されるでしょうか。この場合は、合計値がないので、出勤数が表示されればよい。 #アクセス超素人です。

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

  • ベストアンサー
  • sapporo30
  • ベストアンサー率33% (905/2715)
回答No.1

RDBでは、NULL との演算は、NULLになります。 ACCESSでは、Nz関数を利用して、NULLを別なものに置き換えます。 氏名|出勤数|Nz([年休数],0)|[出勤数]+ Nz([年休数],0) とすればうまくいきますよ。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

noname#22222
noname#22222
回答No.2

質問の回答は出ていますので参考意見です。 ・テーブルのデザインで既定値を0に設定しておく。 これは、フォームの設計等の考え方にもよります。 総合的に考えて支障がなければお勧めしておきます。 ・ヌル値の混入をフォームからの登録時に防ぐ。 これも、出来れば考えたがいいです。 ※その上で、No1さんの示されたヌル対策もが良いと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • アクセスのクエリで空白を0として計算したい

    アクセスのクエリで1・2列目に数値データを入れておき、3列目で合計を表示させたいのですが、1・2列目に空白セルがある場合には0(ゼロ)として計算したいのです。(データが空白だと、3列目も空白になってしまいます。) 1列目 2列目 3列目(合計)  3   2   5 (空白)  2  (空白) ←これを2と表示したい! (空白) (空白) (空白) ←これを0と表示したい! わかりにくい文章ですみませんが、教えてください。

  • ACCESS クエリ 正数のみ演算の対象としたい

    ACCESS2003で作業中です。 選択クエリの数値で「正数」のみ演算の対象としたいのですが、上手くいきません。 クエリのデータシートビューは現在以下の状態です。 (合計フィールドは演算で  合計:[ポイント1]+[ポイント2]+[ポイント3] と単純に足しているだけです。) NO 氏名 ポイント1 ポイント2 ポイント3  合計 1  田中  10    20     -5        25 2  鈴木  20    -10     10        20 これを「正数」のみの合計で以下のように表示をしたいと考えています。 マイナスの数値は計算に含まれないように、何等かの設定をしたいと考えています。 NO 氏名 ポイント1 ポイント2 ポイント3  合計 1  田中  10    20     -5      30 2  鈴木  20    -10     10       30 最終的にはこれをフォームで表示しようと思っています。 クエリ元テーブルの各ポイント1~3のフィールドのデータ型は数値型で、フィールドサイズは倍精度浮動小数点型です。 何かよい方法があれば、是非教えて下さい。よろしくお願い致します。

  • アクセス 同じフィールド(テキスト型)のレコードを連結させたい

    お世話になります。アクセスの超初心者です。 数値型であれば同じ列の合計できますが、テキスト型で以下のように 連結できる方法がございませんでしょうか? <元テーブル> レコード番号  列:キーワード(テキスト型)  列:抽出条件   1      "山,川"                AAA   2      "海外,国内"             AAA   3      "熊,馬"                BBB   ↓このテーブルを元にクエリをかける <クエリ出力結果> 列:抽出条件にAAAを指定   列:キーワードの合計(連結)   "山,川、海外,国内"       ^^      ↑連結の境目には"、"などの区切りを入れたい。 宜しくお願い致します。

  • access2000のバグ?

    windows2000のaccess2000にて、 クエリを実行すると下部の「レコード」 のところに合計件数が6805件と表示されます。 そしてある列を選択して、「昇順で並べ替え」「降順で並べ替え」を実行すると6697件と表示されます。そして2度と6805件と表示されません。 テーブルを閉じて、繰り返すと、また6805件と表示され、同じことになります。 これはバグですか? それとも私がテーブル操作を知らないだけ? #これはこれまで体験したことなし。 #SQLはRIGHT JOINなど含んだものです。

  • ACCESS2000 テキストフィールドの一括化

    ACCESS2000で経理関係のDBを作成中です。入力テーブルの構造はおおよそ下記のとおりです。 フィールド1:科目コード(数値型) フィールド2:金額(数値型) フィールド3:備考(テキスト型) 今、科目コードごとに集計するためのクエリー及びレポートを作ろうと思っていて、金額の合計はできるのですが、備考欄も科目コード単位でまとめたいと思っています。どうすればよいのでしょうか。 (テーブル)       科目コード 金額 備考 レコード1:11    100 AAAAA レコード2:11    200 BBBBB レコード3:12     50 CCCCC レコード4:12    500 DDDDD            ↓ 集計(クエリ、レポート)       科目コード 金額の合計 備考の列記       11    300     AAAAABBBBB       12    550     CCCCCDDDDD こんな感じです。 よろしくお願いいたします。

  • アクセスについて

    アクセスのレコード数483件のテーブルをクエリーで抽出しフォームで表示しているのですが、480件しか表示出来ません、どこか作成、設定で間違えがあるのか教えてください。

  • アクセス・クエリ内のフィールド上での計算式について

    アクセス上には、顧客IDテーブル、売上テーブルと入金テーブルがあります。 (1) 売上テーブル及び入金テーブル上でのIDは、顧客IDテーブルと紐付くようにしています。 (結合プロパティは、顧客IDテーブルの全レコードと売上(入金)テーブルの同じ結合フィールドのレコードだけを含める設定にしています。) (2) 売上(入金)テーブルからクエリでID毎の合計売上額と合計入金額を算出しました。 (3) (2)を基にフィールドに"ビルダー"にて合計売上額-合計入金額として、ID毎の残高を算出しました。 (4) 問題は、(2)のID毎に合計売上額があっても、IDによっては未入金の場合もあり、 その場合、合計入金額を算出するクエリ上ではそのIDは空の状態で"0"表記もされないために、 (3)は、何も表示されません。(即ち、合計売上額100 - 空 = 空)。空ではなくて、ちゃんと空の場合は、0認識出来る方法ってありますでしょうか?

  • アクセスのクエリで

    あるテーブルはエクセルからインポートしていますが、全てのフィールドが空白というレコードが多数存在します。 これをクエリで(他に方法があればどの様な方法でもよいです)全てのフィールドが空白のレコードは表示しない様にする事はできますか? これを更新クエリにして、新しく全て空白のフィールドのレコードが無いテーブルを新たに作ろうと考えています。 教えて下さい。よろしくお願いします。

  • ACCESSのクエリの中でのクエリ指定

    ACCESSのクエリで複数テーブルを結合させ明細表示させました。 その明細作成クエリーを更にそのクエリをテーブルと指定して 合計のクエリを作成して結果を確認すると合計が違っていました。 確認の為、集計を取りその明細クエリーをクエリー上でテーブル 指定してみたところ、元の明細クエリーのみの場合とレコード数 がかわっって表示されまました。 クエリーのテーブルにクエリを指定するのはNGなのでしょうか。 何方かなぜそうなるのか、また、正しい方法があれば教えてください。 宜しくお願いします。

  • アクセスの初心者の質問です(空白の場合に他のフィールドを表示させたい。)

    あるテーブルの型名が空白の場合、同テーブルの部品名を表示させたく、更新クエリで、下記のように式を作成しましたが、空白のままのレコードが残ります。 IIf(IsNull([型名]),[部品名],[型名]) 更新クエリのテーブル名やフィールド名は間違ってないように思います。 初心者の為、説明がわかりにくくてすみません。 わかる方教えてください。