部署ごとの残り予算額を知るための方法について考えています
- ACCESSを勉強している初心者です。以下のデータは購入日で並び替えられ、各部署の予算が10000円までとなっています。私は部署ごとの残り予算額を知りたいと考えています。
- 具体的なデータは購入日、購入部署、購入価格、残り予算、予算の情報があります。良い方法があれば教えてください。
- ベストアンサー
ACCESSについて知恵をおかし下さい☆
ACCESSの勉強真っ最中の初心者です。 宜しくお願いします。 以下のようなデータがあるとします。このデータは購入日で並び替えされていて、購入部署ごと予算が決まっており10000円までとなっております。自分がやりたい事は部署ごとに「残り予算額」を知りたいので以下のようにできないかを考えていたのですが・・・。 良い方法があれば教えてください。宜しくお願いします。 購入日 購入部署 購入価格 残り予算 予算 2007/3/1 A 100 9900 10000 2007/3/3 B 100 9900 10000 2007/3/4 C 200 9800 10000 2007/3/5 A 300 9600 10000 2007/3/8 C 100 9700 10000 2007/3/9 B 400 9500 10000
- AKI78
- お礼率63% (70/110)
- オフィス系ソフト
- 回答数5
- ありがとう数4
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
テーブル T1 が 購入日 購入部署 購入価格 2007/3/1 A 100 2007/3/3 B 100 2007/3/4 C 200 2007/3/5 A 300 2007/3/8 C 100 2007/3/9 B 400 テーブル T2 が 購入部署 予算 A 10000 B 1000 C 10000 だとしたら、サブクエリ(副問い合わせ)にして SQLビューで表すと SELECT T1.購入日, T1.購入部署, T1.購入価格, T2.予算- ( SELECT SUM(T1x.購入価格) FROM T1 AS T1x WHERE T1x.購入部署=T1.購入部署 and T1x.購入日<= T1.購入日 ) AS 残高, T2.予算 FROM T1 INNER JOIN T2 ON T1.購入部署 = T2.購入部署 ORDER BY T1.購入日; となると思います。 Access2002で確認。
その他の回答 (4)
- nicotinism
- ベストアンサー率70% (1019/1452)
こちらでは出来ましたけど? どのような結果が出ましたか? レコードが保存されていない為(レコードセレクタが鉛筆マーク)とかでは?
お礼
この度は有難うございました! また、教えてください。
補足
すみません、勘違いしてました。(^^;;しっかりと"OK"でした。 あと、購入日をクエリで(>=2007/4/5のように)指定して下のようにやるにはどうしたらよいのか教えていただけませんか??(月がまたがった時とか指定したいのです)度々ではありますが宜しくお願いします。 購入日 購入部署 購入価格 残り予算 予算 2007/3/1 A 100 9900 10000 2007/3/3 B 100 9900 10000 2007/3/4 C 200 9800 10000 2007/4/5 A 300 9600 10000 2007/4/8 C 100 9700 10000 2007/4/9 B 400 9500 10000 ↓ 2007/4/5 A 300 9700 10000 2007/4/8 C 100 9900 10000 2007/4/9 B 400 9600 10000
- gatt_mk
- ベストアンサー率29% (356/1220)
部署毎の累計として、各レコード毎の購入価格を元にしてレコード毎に残り予算を計算させたいようですが、これをやるためにはVBAの知識が必要になると思います。考え方としては予算から購入価格を引いたものを変数(購入部署毎に変数A,B,Cが必要になるでしょう)に格納しておき、その変数から購入価格を引いて累計の残り予算を求める形になるでしょう。 フォームかレポートを作成して、そこでプログラムを組む形になるかと思います。 まあ、全くプログラムを作ったことがない初心者なら、毎日勉強して2,3年目ぐらいに理解できるレベルかと思います。 ACCESSはこういう累計処理は苦手です(標準のやり方では簡単にはできないです)。こういった表は初心者ならExcelのほうが簡単です。
お礼
有難うございます。 今までEXCELのVBAは多少やっていたので少しは抵抗ないかと思います。(まだまだ勉強不足ですが・・・(汗)) VBAでやるとどんな感じになるのでしょうか??
- From_Lima
- ベストアンサー率0% (0/10)
まずデータベースという観点から、テーブルを分けてはいかがでしょうか? 1.購入実績テーブル 購入日 購入部署 購入価格 2007/3/1 A 100 2007/3/3 B 100 2007/3/4 C 200 2007/3/5 A 300 2007/3/8 C 100 2.予算テーブル 購入部署 予算 A 10000 B 10000 C 10000 のようなイメージ。 まずクエリを作成します。(これをクエリ1する) 購入実績テーブルを購入部署でグループ化する。 (購入価格の合計を出しておく) ここでさらに予算の消化を計算させるクエリを作成する。(これをクエリ2とする) 予算テーブルの予算からクエリ1で出した購入額実績の合計を引く、これは関数をつかう。 ※予算テーブルとクエリ2のリンクを張るときはもちろん購入部署を使ってください。 最後はレポートで 購入日 購入部署 購入価格 残り予算 予算 2007/3/1 A 100 9900 10000 2007/3/3 B 100 9900 10000 2007/3/4 C 200 9800 10000 2007/3/5 A 300 9600 10000 2007/3/8 C 100 9700 10000 2007/3/9 B 400 9500 10000 を作成すればいいのではないでしょうか? レポートの作成方法は調べてみてください。
お礼
有難うございます。
購入実績の表と、予算の表を分けましょう。 購入実績のほうはご質問の予算部分だけをとっぱらったもの、 予算表のほうは「部署」と「予算」だけのテーブル。 「購入部署」と「部署」でリレーション作成。 あとはクエリにて実現できると思います。
お礼
有難うございます。
関連するQ&A
- Accessの集計方法
いつもお世話になっております。 今回、Accessを作成している中で行き詰ってしまったので質問させて頂きます。 名前1 受注額1 予算1 外注1 名前2 受注額2 予算2 外注2・・・ A 100 80 20 B 200 40 60 C 90 80 10 A 20 80 30 B 100 50 30 A 400 90 100 という感じにデータが記録されています。 このデータを利用してA、B、Cそれぞれの受注額、予算、外注の計を出したいのです。 クロス集計などを利用しようとしたのですがうまくまとめきれず悩んでいます。 何かいい方法は無いでしょうか?
- ベストアンサー
- オフィス系ソフト
- Access2003のレポートについて
Access2003のレポートで質問です。 テーブルに次のようなデータ(例)があります。 部署 氏名 性別 A あああああ 男 A いいいいい 男 A ううううう 女 B えええええ 男 B おおおおお 男 B かかかかか 女 C ききききき 男 C くくくくく 男 C けけけけけ 女 これをレポートで図のように、部署をグループ化して下に氏名と性別を表示したいと考えていますが、やり方が分からず困っています。 どうかご教示をお願いします。
- 締切済み
- その他MS Office製品
- ACCESS で、古い日付順に抽出したい
こんにちは。質問ばかりですみません。 EXCEL から ACCESS に移行するため、四苦八苦している者です。 たとえば下のようなCSV データがあったとします。 品番,納入日 A001,2006/1/24 A001,2006/2/10 A001,2006/2/13 A001,2006/2/14 A001,2006/2/15 B002,2006/1/26 B002,2006/2/3 B002,2006/2/14 B002,2006/2/24 B002,2006/2/27 C003,2006/1/27 C003,2006/2/7 C003,2006/2/9 C003,2006/2/14 C003,2006/2/21 品番に対して、日付は納入日です。 このデータに対して、以下のように一番近い日付だけ抽出し、納入日一覧クエリーを作りたいです。 品番,納入日 A001,2006/1/24 B002,2006/1/26 C003,2006/1/27 EXCEL だと日付順に並び替えてから、別シートからVLOOKUP で上から抽出してくれますよね。 アイデア下さい。 また、どんな言葉で検索していいかわからなくて、既出だったらごめんなさい。 ACCESS 97 で、WINDOWS 2000です。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- マイクロソフトのアクセスでいくつかのデータと組み合わせて、
マイクロソフトのアクセスでいくつかのデータと組み合わせて、 数値を並べたり、○×をつけることは可能でしょうか? アクセス初心者です。 もし分る方がいたら教えていただきたいです。 (1)【3月の来店者】 Aさん Bさん Cさん Dさん (4)【3月のA購入者】 Aさん Cさん Dさん (5)【3月のB購入者】 Cさん Dさん (6)【来店者の来店回数】 Aさん 1 Bさん 4 Cさん 7 Dさん 2 上記データを使って下記のようなデータベースを作りたいと考えています。 来店者 A購入 B購入 来店回数 Aさん ○ × 1 Bさん × × 4 Cさん ○ ○ 7 Dさん ○ ○ 2 (1)来店者から(2)Aを買った人の抽出や (1)来店者の(4)来店回数を出すのは 選択クエリを使いだすことができたのですが このようにすべての来店者のデータをリスト化することは可能でしょうか? すべてのデータ抽出後にIF関数などを使いエクセルでなら行えるかもしれないのですが データが180万行あるのでアクセス内で行えたら嬉しいです。 説明がわかりにくくて申し訳ないです。。。 もし分る方がいたら助けていただきたいです。 宜しくお願いいたします。
- ベストアンサー
- その他(データベース)
- 並び替えするには。。
エクセルのデータの並び替えが出来なく困っています。 色々と試していますが、並び替えが出来ません。 以下の様に、A2,B2には一番少ないデータが常に来ます。 それ以下のA,Bのデータの個数は不揃いです。 これらのデータをC,DでDを基準に昇順で並び替える様にしたいです。 A B C D 1品物 個数 品物 個数(昇順) 2りんご 2 =A2 =B2 3みかん 15 柿 3 4バナナ 25 マンゴー 5 5柿 3 りんご 10 6マンゴー 5 みかん 15 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- Accessデータベースの作成について
入力フォームで大分類(A)と小分類(B)、そしてサイズ(C)とサイズ(D)のどちらか一方を入力すると、価格(E)が出てくるデータベースをアクセスでつくりたいのですが、超初心者の為、参考書片手に毎日悪戦苦闘しています。アクセスに詳しい方、教えていただけますでしょうか。 以下、内容です。 Aは3種類あり、種類○○は数字の「1」、種類××は数字の「2」のように、数字で入力をしたいです。 Bは数値を入力します。整数、小数点ありのもの合わせて10種類あり、10種類中のいずれかを入力します。 CとDの入力も数値です。整数の場合も小数点の場合もあります。 AとBは必須入力、CとDはどちらか一方の数値を入力します。(入力はAとBとC、もしくは AとBとD) Aの3種類別にBの種類毎のCの価格テーブル「T_価格」はあります。 Cは入力数値X「T_価格」でEを求めます。 DはD-B÷1.5XT_価格でEを求めます。 使用しているアクセスのバージョンは2007です。 どうぞよろしくお願いします。
- 締切済み
- その他(データベース)
- Accessのテーブル
普段はExcelで簡単なデータ入力くらいしかしていない者です。 Accessのテーブルで A1 A2 A3 … A30 B1 B2 … B30 C1 C2 … C30 となっているデータを A1 B1 C1 A2 B2 C2 A3 B3 C3 ・ ・ ・ ・ ・ ・ A30 B30 C30 と並び替えなければいけないのですが、方法がわかりません。 Excelに変換したほうがよいのでしょうか。 よい方法がありましたら教えていただきたいです。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Accessで金銭管理をするときの残高の表示方法
最近アクセスを使い始めた初心者です。 以下のような複数名(人数が増えることもあります)についての金銭管理を行っています。 ID 氏名ID 月日 氏名 氏名番号 適用 入金額 出金額 残高 1 1 2009/01/25 Aさん 1001 入金 3000 0 3000 2 1 2009/01/25 Aさん 1001 お菓子 0 300 2700 3 1 2009/01/26 Aさん 1001 切手 0 100 2600 4 1 2009/01/30 Aさん 1001 修理 0 4000 -1400 5 1 2009/02/01 Aさん 1001 入金 6000 0 4600 9 1 2009/02/20 Aさん 1001 パン 0 100 4500 11 1 2009/02/25 Aさん 1001 入金 200 0 4700 6 2 2009/01/10 Bさん 1002 入金 1000 0 1000 7 2 2009/01/11 Bさん 1002 雑誌 0 600 400 8 2 2009/03/25 Bさん 1002 鉛筆 0 500 -100 10 3 2009/03/10 Cさん 1003 入金 500 0 500 アクセスのクエリ場面で残高に 残高: DSum("Nz([入金額],0)-Nz([出金額],0)","テーブル","([月日]<#" & [月日] & "# or 月日=#" & [月日] & "# and ID<=" & [ID] & ") and 氏名='" & [氏名] & "'") のように計算を行わせて上記のような計算結果を得ました。このあとAさん、Bさん、Cさんのそれぞれ最後の残高だけを次のように表示するようにプログラムしたいと思っています。 ID 氏名ID 月日 氏名 氏名番号 適用 入金額 出金額 残高 11 1 2009/02/25 Aさん 1001 入金 200 0 4700 8 2 2009/03/25 Bさん 1002 鉛筆 0 500 -100 10 3 2009/03/10 Cさん 1003 入金 500 0 500 例えば今日(3月25日)までの残高計算をしようとして、月日の抽出条件に=Date() と条件を入れても ID 氏名ID 月日 氏名 氏名番号 適用 入金額 出金額 残高 8 2 2009/03/25 Bさん 1002 鉛筆 0 500 -100 となりBさんのデーターしか表示されません、なんとかAさんとCさんのデーターも表示したいのですが、Aさんが2月25日、Cさんが3月10日までしか、まだデーターがないのでどうにも表示されないようです。 どうしたら3人とも表示できるようになるのか、どなたか教えてください。 どうぞよろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- Access2002について
Access2002で次のようなデータがあり、 フィールドA |フィールドB | フィールドC -------------------------------------------- 123 | 234 | 456 | 123 | (1) 789 | 123 | (1) フィールドBのデータが、フィールドAのデータの中に存在している時は、フィールドCに(1)と表示させる。 ・・・という処理をしたいのですが、どんな方法でやったらいいのでしょうか?レコード数は50万程あります。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
補足
有難うございます。 試したところうまくいきました。が、残高はマイナス(下の-100のように)も出したいのですがどうすればよいのでしょうか?? 購入日 購入部署 購入価格 残り予算 予算 2007/3/1 A 100 9900 10000 2007/3/3 B 100 9900 10000 2007/3/4 C 200 9800 10000 2007/3/5 A 10000 0(←-100) 10000 宜しくお願いしますm(_)m