• ベストアンサー

フォーム上で小計など自動計算するには・・・

アクセス初心者です。 Windows2000で アクセス2000で作ってます。 現在、受注明細のフォームを作ってます。 フォーム上での合計や消費税が自動的に計算されるようにしたいのですが、サブフォームを使わずに設定出来るのでしょうか? その設定方法など教えて頂けたらと思います。 宜しくお願い致します。

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

  • ベストアンサー
  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.5

No3の続きです。失礼しました。急いで書いて送ったので短縮してしまいました。データソースをデータのコントロールソースに読み替えてください。 小計のフィールドを選んで右クリックでプロパティを開きその中のデータタブのコントロールソースに式ビルダーで式を作ればOKですよ。 表示だけならこれで大丈夫ですよ。 プロシジャに記述するより記述は簡単にすみます。フォーカス喪失時にイベントプロシジャと表示されていたら消してください。 先程はあいまいに書いてしまってすみません。

renault
質問者

お礼

先程、右寄りにする設定方法を聞きましたが、無事解決出来ました。 本当にいろいろとご協力有難うございました。 まだまだ分からない事があると思いますが頑張って設定したいと思います。

renault
質問者

補足

無事設定できました。有難うございました。 もう1つ質問なんですが, A+B=C で設定したのですが、AとBのテキストボックスに数字を入力した時は、右寄りで入力されているけど、合計のCのテキストボックスには左寄りで合計が入力されてしまいます。 すごく初歩的なことですがどのようにしたら全ての表示を右寄りに合わせる事が 出来るのでしょうか? お手数かけますが宜しくお願い致します。

その他の回答 (4)

  • yatokesa
  • ベストアンサー率40% (201/496)
回答No.4

イベントプロシージャに抵抗がないのであれば、DSum関数でもできますね。#先の集計クエリーのようなこと データソースのところに  = DSum('金額', '受注明細テーブル名', '受注番号=' & [受注番号]) ってなかんじで行けそうです。 #Ac2kは持ってないのでこれができるかわかりませんが、ヘルプで調べてみてください

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.3

フォームに明細が全て表示されるなら合計を表示するフィールドを作成しデータソースに合計をするフィールド名を記述していけばOKじゃないですか? =[A]+[B]+[C]+[D] の様に。 途中のフィールドに空白やnullが入る可能性があればNz関数を使って =Nz([A])+Nz([B])+Nz([C])+Nz([D]) とすれば合計できます。 消費税を計算したければ =[合計したフィールド]*0.05 でOKです。 やってみてください。

renault
質問者

補足

初歩的なことを聞きますが、データーソースってイベントプロシージャの画面で宜しいのでしょうか? 例えば、小計のフィールドを選んで、プロパティでコードビルダを選択し、イベントでフォーカス喪失時を選ぶとイベントプロシージャの画面が表示されますよね? その画面で記述すれば良いのですよね? 初歩的過ぎてすいません。 宜しくお願い致します。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

そのフォームが1受注あたりの受注明細が表示されるフォームであれば出来ます。 そのフォームがデータシート型であればフッタの所にフィールドの合計を表示するフィールドを作りプロパティのデータソースに =Sum([金額]) で金額の合計が出せます。そのフィールドが例えば[合計]として、消費税を表示するフィールドを作りデータソースに =[合計]*0.05 とすれば消費税が計算されます。 質問の内容からだとこんな感じで良いと思います。 質問の意味が違うのなら補足してください。

renault
質問者

補足

早速アドバイス有難うございます。 フォームはデータシート型ではなく、単票形式のフォームなのですがその場合は無理なんですよね? で、金額の合計も1つとかではなく何項目もの小計があって総合計があるパターンなんですが・・・ お手数かけますが宜しくお願いします。

  • yatokesa
  • ベストアンサー率40% (201/496)
回答No.1

受注番号でまとめ、金額の合計を出す集計クエリーを作っておいて、それをフォームのクエリーに追加すればできるんじゃないかな?

関連するQ&A

  • アクセス★非課税、課税の合計金額計算の仕方

    見積書の入力をしています。 メインフォームとサブフォームがあり、サブフォームでは受注明細を入力できるようになっています。 サブフォームの合計金額計算で、単純に【小計】【消費税】【総計】は計算できるのですが、非課税の受注が混ざっている場合、うまくいきません。 非課税項目にチェックを入れて区別などをし、そのチェックが入っていないものだけの消費税を計算できるようにしたいのですが、具体的にどのようにしたら良いのでしょうか? サブフォームのフィールドは、品名・数量・単価・金額です。 過去の質問は探しましたが見つけられませんでした。 過去にあったら申し訳ないのですが、どうか宜しくお願いします。

  • フォームの計算がテーブルに反映するには?

    Windows2000/ACCESS2000を使用してます。 フォームで自動的に合計や消費税が計算されるように設定しましたが、保存されたテーブルを見てみると合計や消費税は空白になっていて計算された値が入力されてませんでした。 フォームでの計算式は以下のように設定しました。 合計のフィールドを選んで、プロパティを開きその中のデータタブのコントロールソースに式ビルダーで、 =A+B と設定しました。フォーム上では計算されるの ですが・・・ どのようにしたらテーブルに計算された値が表示されるのでしょうか? 宜しくお願いします。

  • Access2003 フォームについて

    Access初心者です。ご存知の方がいらっしゃいましたら教えて下さい。 内税と外税の計算について 現在請求書を作成するmdbを制作しております。 メインフォームに「小計」、「消費税」、「合計」という項目があります。 それぞれの詳細は以下のとおり。 ●「小計」のコントロールソース→=[Q-請求明細 サブフォーム]!合計金額 ●「消費税」のコントロールソース→=[小計]*0.05 ●「合計」のコントロールソース→=[小計]+[消費税] 同じメインフォーム上に「内税」と「外税」というオプションボタンを配置して、 「内税」にチェックを付けた場合は、「消費税」が計算されない。 「外税」にチェックを付けた場合は、「消費税」が計算される。 このような仕様にしたいと思い作っているのですが、どのように作成すると良いか 分かりません。 ご存知の方がいらっしゃいましたら是非教えて下さい。 不足箇所がありましたら追記致します。

  • ACCESSのメインフォームとサブフォームについて

    ACCESSで、受注伝票のようなものを作成したいと思っています。受注伝票フォームに受注明細のサブフォームを埋め込んだようなフォームを作ろうとしています。その際、受注伝票と明細に受注コードのフィールドを設け関連づけたいのですが、メインフォームに受注コードを入力したらサブにも同じコードが自動的に振られるようなことはできるのでしょうか。 出来ないのであれば、どのように作ればよいのでしょうか。

  • ★Access★2つのサブフォームの計算

    受注管理として、注文書の作成入力をしています。 『メインフォーム』で、顧客先などを入力し、『サブフォームA』で受注明細を入力しています。そして受注種類が2つあるので、フィールドの違う受注明細の『サブフォームB』もあるんです。各サブフォームには数量・単価・金額が入っています。 『サブフォームA』『サブフォームB』の両方に注文がある場合は、各サブフォームの合計(=[Form]!サブフォームA!金額合計)を出し、その合計同士を足して総合計金額(A+B)が『メインフォーム』にちゃんと表示されます。しかし、『サブフォームA』にだけ注文がある場合、『A』合計は表示されますが、『B』合計が空欄になってしまって、A+Bの合計が計算されないのです。さらにレポート印刷もできないのです。 どうすればいいのでしょうか?合計プロパティの既定値を0にしてもだめなんです。誰か教えて下さい。

  • ACCESSのテーブルとフォーム

    大変失礼ですが、いきなり質問です。よろしくお願いします。 テーブルに「受注データ」 フォームに「入力画面」というのを作ってあります。 そのフォームの一部に「商品金額」・「送料」・「消費税」・「合計金額」というテキストボックスがあります。それぞれのコントロールソースには単純にテーブルのデータを使うようにしてありますが・・・・・・「合計金額」のコントロールソースに「商品金額」・「送料」・「消費税」の合計を計算してくださいというような設定をしてしまったら、フォーム上ではしっかり計算をして表示してくれたのですが、テーブルの「合計金額」の列は空白になってしまいます。 テーブルの列が空白ではなく、フォームで表示されたその数値をテーブルの列に戻す?返す?という事を設定するにはどうしたら宜しいのでしょうか?是非ご教示下さいます様お願い申し上げます。ちなみにACCESS2000を使用しています。なぜかVBAの画面でヘルプを開こうとするとインストールされていないみたいで開かないんです。(←これ、余談です。すみません。)

  • access2010のフォーム上で計算したいです

    access2010 初心者です。 メインフォーム上に総合計を計算したいのですがどうしたらいいのか困ってます。 ***サブフォーム(テーブル1から表示しました)*** ・商品名(テーブル1から表示) ・金額(dlookupを使って「商品一覧表」から金額を表示しました) ・数量(テーブル1から表示) ・合計金額(コントロールリボンでテキストボックスを作り「金額」*「数量」で表示してあります) *********************** メインフォームに、サブフォームの「合計金額」の様にテキストボックスで、サブフォームの「合計金額」の『総合計』を表示したいです。 総合計がある一定の金額になるように、サブフォームの「数量」を決めて行きたいのです。だから、一定金額から『総合計』を引いて残金も表示したいのですが、『総合計』の求め方がわからなくて困っています。 総合計や合計金額はデータとしてテーブルには残らなくてもOKです。 初心者なので、できればわかりやすく簡単な方法がうれしいです うまく伝えれなくて不明な点があるかと思いますが、なにとぞお願いします

  • フォームにて自動計算したい・・・

    自力でネットで調べてある程度まで完成しましたが、合計金額の計算式がわからない為詰まりました・・・ まず、オークションで落札された代金を入力してもらうと、合計・消費税・税込み合計が表示される。 その次に発送先を選択されると、合計・消費税・税込み合計が更新(再計算)される・・・ というようにしたいのですが・・・ まったくわからず困っております(^^;お助けください

  • 再計算って出来ますか?

    Windows2000/ACCESS2000を使用してます。 アクセスで再計算って出来ますか? 受注明細と登録台帳の2つのフォームがあります。 受注明細には登録年月日と言う項目があって、登録された時点ではまずは登録台帳に登録年月日を入力してから受注明細の登録年月日に表示するようにしたいのです。終了ボタンをクリックしたら再計算されて、登録年月日とかが入力される様に設定する事って出来るのでしょうか? 宜しくお願いします。

  • ACCES2000 フォーム

    こんにちは、以前にも質問させて頂いてのですが、再度お願い致します。 フォーム 1.オートNo. 2.企業名 3.金額合計 サブフォーム(表形式) 1.オートNo. 2.商品名 3.数量 4.単価 5.金額 ← 数量×単価 で自動計算。クエリーで設定してます。 サブフォームの金額の合計を、フォームの合計へ表示できるようにしたいのです。 以前、質問した時に教えて頂いたのでやり方は分かるのですが、エラーが出てしまいます。  サブフォームのフォームヘッダーに、非表示テキストボックスを作成し、コントロールソースに、=Sum([金額])と設定し合計を求めようとしてるのですが、下記のようなエラーが表示されてしまいます・。 *指定した式の構文が不正です。  たとえば、演算式がないときにオペランドを指定してい ます。 と出ます。 どうすれば宜しいでしょうか? 初心者なもので・・。 お願いします。