• ベストアンサー

Accessのサブフォームの累計について

とても初歩的な質問で申し訳ありませんが、誰か教えて下さい。 売上メインフォームの中に 「Aの商品のサブフォーム」 「Bの商品のサブフォーム」 「Cの商品のサブフォーム」 「Dの商品のサブフォーム」 と作ってあります。 各小計はメインフォーム内に出しております。 メインフォームの累計をフォームフッターに出すのですが、A~Dの商品の売上が無い場合(小計が出ない場合) フォームフッターの累計に合計が反映しません。 どのような式を入れれば、良いのでしょうか? どなたか教えて下さい。

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

  • ベストアンサー
  • nekomilk
  • ベストアンサー率24% (20/83)
回答No.2

実際にAccess2000上でやってみました! 「Aの商品のサブフォーム」内に合計値を算出しているコントロールに、 =IIf(IsNull(Sum([価格])),0,Sum([価格])) と式を書きます。 これを合計値Aとします。 B C Dのサブフオームにも同じ事を書いて メインフォーム上で  合計値A+合計値B+合計値C+合計値D としてみてはどうでしょうか。 これだと A B C Dどれかがレコードがなくても、期待した結果が得られると思います。 (メインフォーム上でNULLチェックをしても同じ効果を得られると思います。) 上記の方法で、メインフォーム上の合計値には サブフォーム内にレコードがない場合でも 0と表示されることを確認しました。 できなければ また書き込みして下さい。

yellowsan
質問者

お礼

有難う御座いました。 とても助かりました!! メインフォームに合計値がちゃんと反映されました。 今、急いで、素人ながらにシステムを作っているので素早い解答をして頂いて嬉しく思います。 又、しょーもない質問するかもしれませんが宜しくお願いします。

その他の回答 (1)

  • nekomilk
  • ベストアンサー率24% (20/83)
回答No.1

昔やったので、あまり自信がありませんが >各小計はメインフォーム内に出しております。 で、出している小計が値として認識されていない 為だと思われます。(サブフォームにレコードがないから) IsNumric(IsNULLかも)で、数値ではないのなら0として 足し算すれば、うまくいくかもしれません。

yellowsan
質問者

お礼

ありがとうございます。 その後もいろいろ試しましたが、無理でした。 <IsNumric(IsNULLかも)で、数値ではないのなら0として 足し算すれば、うまくいくかもしれません。 ↑こちらをするとなるとA~Dの売れてないフォームに仮入力をしないといけないのではないでしょうか? 頭ではVBでならできるんだろな~・・・とはわかっていても何をどういじればいいのかわからないでいます。

関連するQ&A

  • access2007でのサブフォームへの入力

    仕入入力画面なんですが メインフォーム(仕入伝票テーブル)サブフォーム(仕入伝票明細テーブル) という構成です。 メインフォームで 仕入先をコンボボックスで指定すると サブフォームの 商品を入力するコンボボックスに メインフォームで選択した仕入先で購入できる商品が選べるように したいのですが、どうすればよろしいでしょうか? メインフォームの仕入先コンボボックスを選択する度に サブフォームの商品コンボボックスで選択できる内容を反映させたい です。 仕入先A : 商品1 商品2 仕入先B : 商品3 商品4 商品5 仕入先C : 商品6 商品7 商品8 商品9 メインフォームで仕入先コンボボックスで仕入先Aを選択すると サブフォームで選択できる商品コンボボックスは商品1と商品2 メインフォームで仕入先コンボボックスで仕入先Bを選択すると サブフォームで選択できる商品コンボボックスは商品3と商品4と商品5 というようなイメージで作りたいです。 どうかよろしくお願いします。

  • 【ACCESS2000】 サブフォーム同士の値のチェックを行いたい。

    ・メインフォーム 合計チェックボタン ・サブフォーム1 伝票番号,売上金額合計 ・サブフォーム2 伝票番号,明細行,売上金額 上記のような構成になっており、合計チェックボタンを 押したときに伝票ごとのサブフォーム1の売上金額合計がサブフォーム2の伝票番号でまとめた売上金額合計より、下回っているものがある場合はエラーメッセージを出したいと思っています。(できればその伝票番号もだしたい。) どのようにすればよいでしょうか。

  • アクセスのサブフォーム

    アクセス2000を使っているのですが、サブフォーム内に表示されている金額の合計をメインフォームに表示させる事は出来るでしょうか? またサブフォームを透明にして、メインフォームが透けて見えるようにはならないでしょうか? よろしくお願いします。

  • Accessのサブフォームについて

    Accessのサブフォームのテキストボックスをクリックするとメインフォームのテキストボックスにサブフォームのテキストボックスの値を反映させるために以下のロジックを組み込んだ所エラーが発生してしまいました。 調べてみても分かりませんでしたので解決方法が分かる方は教えて下さい。 よろしくお願いします。 ロジック Form!メインフォーム!テキストボックス=サブフォームのテキストボックス エラー 「指定した式で参照されている’メインフォーム’フィールドが見つかりません」 「コントロールがフォーカスを取得していないときに、コントロールのプロパティまたはメソッドを参照することはできません」

  • ACCESSでサブフォームの編集中レコードの処理

    ACCESS2000で単票系メインフォームと帳票系サブフォームを連結し、サブフォームに入力した明細(複数レコード)の金額累計(サブフォームフッターの非連結コントロール)をメイン側へ登録する処理を行っています。メイン側(マスターテーブル)への保存は保存用のコマンドボタンで行っています。サブフォーム側で完全に編集完了した場合(カーソルが次レコードの入力ラインにある)は正常に処理されますが、編集途中のレコードの金額は累計されないで保存されてしまいます。また保存コマンドボタンでサブフォームにRequeryをかけると累計金額がクリアされてしまいます。編集途中(つまり入力後エンタキーを押さないで直接コマンドボタンを押下)でもちゃんと累計されるような方法をご指導ください。よろしくお願いします。

  • Access2000フォーム/サブフォームにつおて

    Access2000でフォーム/サブフォーム(売上伝票)を作っています。 フォーム(売上伝票メイン)には伝票番号、売上先などを入力・・・ サブフォーム(売上伝票サブ)は商品、数量、金額などを入力します。 そこで質問ですが、サブフォームの商品は商品コード(コンボボックス)を入力すると該当する商品名、単価などを商品台帳から引いてくる、としたいと思い、商品コードの「更新処理後」に以下のコードを記述しました。   Me![商品名] = DLookup("[商品名]", "[商品台帳]","[商品コード]= Forms![売上伝票メイン]![売上伝票サブ]![商品コード]")     サブフォーム上の商品名に商品台帳の商品名を入力するとしたつもりなのですが、何も表示されません。  単価も単位も同様です。  この方法ではだめなのでしょうか?  

  • アクセスのサブフォームでのトラブル

    サブフォームにコンボボックスがあります。値集合ソースにクエリを指定しており、クエリの抽出条件でメインフォームのリストボックスの値を参照しています。 ところがなぜか、メインフォームのリストボックスを変更しても、それがサブフォームのコンボボックスに反映されません。どういうわけか、変更する前の値が反映されてしまいます。 ところがデータベースウィンドウからそのサブフォームを開くと、同じコンボボックスにメインフォームの変更がちゃんと反映されています。 メインフォームのリストボックスの更新後処理イベントでサブフォームのコンボボックスのリクエリを実行しています。 原因が分からず困っています。よろしくお願いします。

  • Access得意な方教えてください。

    検索ボタンを作りたいのですが上手くできません。 検索ボタンの絵はメインフォームに作成してはいますが そのボタンを押したらどのように動くかまで設定が組めていません。 フォームは、メインフォームに店舗IDと店舗名と売上金額合計の枠(テキストボックス) サブフォームがデーターシート形式で売上履歴が表示するようになっています。 店舗IDと期間を入力したら 店舗名と売上履歴がレコードごと(期間内の)を表示させたいです。 店舗ID:入力 期間:2014/12/01-2015/1/31 検索ボタンを押すと 店舗名:反映 サブフォーム:期間内の売上履歴が反映 売上金額の合計:期間内の売上金額の合計が反映 どのようにすればいいかネットで調べましたが よくわかりませんでした。 手順を詳しくおしえていただけると助かります。 または、VBAのような式が必要でしょうか? 教えていただけますようお願いいたします。 ※現在メインフォームの中にサブフォームをデータシート形式で 表示させるところまでやっております。

  • access2007 サブフォームのエクスポート

    担当営業・売上月度別のデータを抽出用フォームを作成しました。 メインフォームでは担当を選択するためのコンボボックスと 売上月度を選択するためのコンボボックスを配置しています。 サブフォームはメインフォームで選択された条件の明細が 表示される設定となっています。 このサブフォームに表示された内容をエクセルにエクスポート させたいのですが、メインフォームにボタンを配置しても メインフォームの担当と売上月度の日付のみが エクスポートされるだけでサブフォームの内容がなに一つ エクスポートされません。 担当・。売上月度で抽出されたサブフォームの内容を エクスポートするにはどうすれば良いでしょうか? ご指導の程、宜しくお願い致します。

  • ACCESSのサブフォーム教えてください☆

    お世話になっております。 メインフォームではなくサブフォームの抽出方法で、コンボボックスでサブフォームのフィールド(例えば、商品名)を選択後、テキストボックスで文字列(例えば、ソフトクリーム)を指定して検索する方法です。メインフォームでのやり方は調べて(VBA)分かったのですがサブフォームは試行錯誤してやってみたのですがうまくいきません。 すみませんが、宜しくお願いします。