• ベストアンサー

AccessでクロスABC分析表を作りたい

Accessのクエリーで次のようなクロスABC分析表を作りたいのですが、行き詰まっています。 ・商品ごとに売上金額・売上数量・粗利金額にそれぞれ数値が入っています ・売上金額の降順に並べ替え、上位から順に累計し、それぞれ総合計に対する「累計構成比」を算出。 ・売上数量、粗利金額についても同様にそれぞれ降順ソートした状態での「累計構成比」を算出。 知識が乏しいもので、できればクエリーで作りたいのですが、どなたかご教授いただけると助かります よろしくお願いします。

noname#11057
noname#11057

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

  • ベストアンサー
noname#7099
noname#7099
回答No.2

私の場合は売上金額のABC分析だけ必要でしたので、レポートの詳細に並べてやっています。 構成比は =IIf(Sum([売上金額])=0,0,[売上金額]/Sum([売上金額])*100) 累計構成比は =IIf(Sum([売上金額])=0,0,[売上金額]/Sum([売上金額])*100) ただし、プロパティで集計実行を全体とすると、構成比を累計します。 ABCのランクは =IIf([累計]>75,IIf([累計]>80,"C","B"),"A") ヒントぐらいにはなるでしょうか。

noname#11057
質問者

お礼

matubokkuriさん、ありがとうございます。 やはり、レポートでやるしかないのでしょうか。 最終的にはExcelファイルにエクスポートする、マクロにしたいのです。

その他の回答 (3)

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

> 売上額 構成比 累計構成比 >商品A 300円 20.0% 20.0% >商品B 350円 23.3% 43.3% >商品C 400円 26.7% 70.0% >商品D 450円 30.0% 100.0% >------------------------- >合計 1500 100.0% レコード毎の累計はクエリでは出来ないので#2の方のようにレポートを構成比までの クエリで作成し構成比を集計するフィールドを作り、そのフィールドを百分率して 累計構成比を表示するようにし、そのレポートをExcelに出力するようにすれば良い のではないでしょうか。

noname#11057
質問者

お礼

O_cyanさん、何度もお時間をとらせてしまい、申し訳ございません。また、ありがとうございます。 やはりそれしかありませんね。レポートのエクスポートでやってみます。 本当にどうもありがとうございました。

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

クエリを実行する際にトップ値に10を設定すれば上位~10位までになります。 SOLクエリであればSELECT TOP 10 ・・・で上位10位まで表示されます。

noname#11057
質問者

お礼

O_cyanさん、ありがとうございます。 私が作成したいイメージは 売上額 構成比 累計構成比 商品A 300円 20.0% 20.0% 商品B 350円 23.3% 43.3% 商品C 400円 26.7% 70.0% 商品D 450円 30.0% 100.0% --------------------------------------- 合計 1500 100.0% で、この「累計構成比」の部分を出したいのです。

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

>・売上金額の降順に並べ替え、上位から順に累計し、それぞれ総合計に対する >「累>計構成比」を算出。 クエリで作りたいのでしたら売上金額を降順にソートした集計クエリと別に全ての 売上金額を集計したクエリ(総合計のみ表示する集計クエリ)を作ります。 総合計のクエリを売上金額を降順にソートした集計クエリにテーブルの追加をし、 総合計クエリの総合計金額のフィールドをクエリに追加し「累計構成比」を演算 するフィールドを作り[売上金額の合計]/[総合計金額]*100の演算をさせ累計構成 比が求められます。 これが簡単な方法だと思いますが。

noname#11057
質問者

お礼

O_cyanさん、ありがとうございます。 ご教授いただいた方法ですと、全体の金額に対する「それぞれの金額」の構成比となってしまいます。 たとえば、上位から10番目の商品に表示する「累計構成比」は、 「上位1位~10位までの売上合計」/「全体の売上合計」というように算出したいのです。

関連するQ&A

  • ABC分析

    問題②のパレード図からABC分析する所で困っています。 累積構成比のA群何%から何%・B群何%から何%・C群何%から何%ってどうやったらわかりますか? あと、「売上累積比率上位70%までがA群」ということは、0%から70%がA群ということですか? わかる方教えてください。

  • 累計構成比とは???

    累計構成比とはなんですか?? 累計構成比の意味がいまいち理解できません。どなたかわかる方以下を例にとってみますので教えてください、 ある店での商品を売上高の高い順に並べていく。次にそれぞれの商品の売上高が、全売上高に対してどの程度の割合なのかを計算していく。これがいわゆる構成比ですよね? そこでさらに上から順番に累積構成比を計算していくとすると・・・ 出し方はなんとなくわかるのですが、それを出すことによって何がわかるのでしょう??いまいち意味がよく理解できません。 どなたか教えてください。 ABC分析ともいわれていると聞きますが・・・ちんぷんかんぷんです。 宜しくご指導願います!!!

  • ACCESSにおけるレコードの足し算について

    ACCESSで構成比とその累計を出そうとしているのですが、 商品名 構成比 累計 というテーブルで、1行上のレコードの構成比と指定する行の構成比を足したものを累計に表示したいのですがクエリで出す方法はあるのでしょうか? どなたかよろしくお願いします。

  • パレートとABC分析

    私なりにまとめますと、 『パレート図を使ってABC分析を行う。 累積比率で上位80%に含まれる項目を重点を置けばよい。 一般的な傾向として、それに含まれる項目数は全体の20%程度である。 これをパレートの法則(80:20の法則)と呼ぶ。』 となるのですが、間違いがあれば指摘していただきたいです。 1)「パレートの法則」と「80:20の法則」は同意語としてよいのでしょうか? 私が調べた中には、前者は経済用語で、後者はプログラミング用語としていたものがあったのですが、内容(法則の言いたいこと)は同じだと思います。 2)ABC分析は、生産管理や売上管理で使われることが多いようですが、他にも利用される場面があれば教えて下さい。 たくさん書きましたが、よろしくお願いいたします。

  • Excel2007/フィルタで並べ替えた順に累積

    現在ABC分析の表を作成しています。 行に商品名を、列に構成比、構成比の累積、粗利率などを表記しているのですが、 フィルタで粗利率の高い順に並べたときに、構成比の累積を並べ替えた通りに累積していくようにしたいのですが出来ないでしょうか。

  • ABC分析の各A~Cの基準の決め方

    売上等についてある会社のABC分析を行おうとしていますが、A,B,Cが それぞれ上位~%の範囲にした方がよいかどうかの判断というのはどのように 考えればよいのでしょうか? ウェブで調べても判断基準の考え方が書いていないサイトが多いです。 ”正規分布の標準偏差で考えると1σ以内の70%と2σ以内の95%で切るのが妥当 という考え方もできます。”というように書いてあるサイトもあります。

  • ABC分析とABMについて

    当社は、金融機関のバックオフィス専門のサービスをしている会社で従業員は1500人程度の規模です。 ABC分析を行うことになり、にわかに勉強を始めたばかりなのですが、その有用性に疑いを感じています。分析を行うための、データを集積するためのシステム開発に莫大な予算を要するからです。 確かに考え方そのものは、興味深いもので大いに参考にすべき点はあるものの、経営陣に分析結果から考察を行う意欲を感じないからです。データ採取を担当する現場の負担を考慮しても、定着は厳しいものがあると感じます。 ABCやABMはどんな規模の組織についても、有効なのでしょうか? また、質問の内容が変わりますが、この場合のシステム開発とかもろもろの費用として「かけても良い金額」とは、どの程度でしょうか?売上金に対する比率など、一般的にはどの程度なのでしょう? 当社の資本金は二億円。すでに、開発費を一億円程度使ってしまったようです。

  • アクセス 抽出条件

    いつもお世話になります。 次の条件で抽出したい時、クエリの抽出条件の書き方を教えてもらえますか。 支店CD 顧客CD 売上金額 昇順         降順 1     11     5,000 1     12     4,000 1     13     3,000 1     14     2,000 2     15     6,000 2     16     5,000 2     17     4,000 3     18     7,000 3     19     6,000 3     20     5,000 支店ごとの上位2レコードを抽出したいのです。下記のように 支店CD 顧客CD 売上金額 1     11     5,000 1     12     4,000 2     15     6,000 2     16     5,000 3     18     7,000 3     19     6,000 アクセスは2003です。よろしくお願いします。

  • ACCESS フォームの作成について

    企業コード(重複しない)売上構成比(abc商品)、項目構成比(a)、項目構成比(b),項目構成比(c) と項目がある場合、私の作成したデータベースでは 売上構成比テーブル 企業コード_売上構成比_種別ID 3項目テーブル 企業コード_3品目項目ID_種別ID_項目構成比_種別名 としています。 売上構成比と言うのは売上の種類別の比率です。(15種類) さらにその種類の項目別の比率が3項目あります。 同じ企業コードで同じ種別IDの項目構成比を足せば100%になります。 同じ企業コードで売上構成比を足せば100%になります。 企業コードは店舗のデータがあるので(店名、住所等)そちらの主キーになります。 要約すると、店別の構成比ということです。 ここで問題になるのが、入力フォームを作成するさいに、 売上構成比(abc商品例ゴルフ)、項目構成比(a項目)、項目構成比(b項目),項目構成比(c項目) のように作成しないとミスを気づかない場合があります。 ですので項目IDごとにクエリを作成し (項目a 項目b 項目c)それらのクエリを企業コード、種別IDで結び、 これをサブフォームとして作成したのですが、次のレコードに進むときに処理に時間がかかります。5秒程度 サブフォームの総レコード数が23万件弱あるため仕方がないのですが、どうにかならないでしょうか? //upload.jpn.ph/upload/upload.php?id=30628 分類名=種類名 例:3品目テーブル 企業コード 種別ID 項目ID 項目構成 3 1 1 0 3 1 2 0 3 1 3 0 3 2 1 0 3 2 2 0 3 2 3 0 3 3 1 0 3 3 2 0 3 3 3 0 3 4 1 0 3 4 2 0 3 4 3 0 3 5 1 0 3 5 2 0 3 5 3 0 3 6 1 0 3 6 2 0 3 6 3 0 3 7 1 0 3 7 2 0 3 7 3 0 3 8 1 0 3 8 2 0 3 8 3 0 3 9 1 10 3 9 2 5 3 9 3 85 3 10 1 0 3 10 2 0 3 10 3 0 3 11 1 0 3 11 2 0 3 11 3 0 3 12 1 0 3 12 2 0 3 12 3 0 3 13 1 0 3 13 2 0 3 13 3 0 3 14 1 0 3 14 2 0 3 14 3 0 3 15 1 0 3 15 2 0 3 15 3 0

  • Access 集計について

    サブフォームでDsumを使用しIDごとの合計を表示するようにしたのですが、結果が100になるはずですが、表示が99.9999976158142や100.000002384186となってしまいます。 上と同じ現象だと思うのですが、売上から構成比率で構成金額を算出して、同じ種類の構成金額を合計したものをはじめの売上で割り構成比率に直したものを表示し、構成比全種類を合計足した場合100になるはずなのですが、94.5と計算が間違っています。 これらの原因が分かる方お願いいたします。

専門家に質問してみよう