• ベストアンサー

ACCCESSの表集計及びEXCELとの関係について

EXCEL経験3年ACCESS経験3ケ月のおとうさんです。大容量データーを、簡単な表へ落とし込む作業ですが、データー集計をACCESSで行い,表計算を,EXCELで行う・・・ということは通常の作業形態でしょうか? 本来であれば,一連の作業を,ソフトを理解していない者が実施可能な状態で表記させたいのです。しかしACCESSの表計算の手間にはビックリしており苦労しております故、EXCELで逃げようと考えております。 ご回答宜しくお願いいたします。

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

ACCESSをシステム開発のソフトと考えてみてください。 ボタン一つで目的が達成できるような、クエリ、レポートなどをマクロなどを駆使して作成します。 もちろん、そのボタンの作成は難しいですが、完成したボタンで誰でもが目的を達成できるようになります。 >作業内容は:10万件以上のデーターを集計し、最終的には下記の様な帳票を出力します。 はACCESSでボタンを作成し処理する分野になると思います。 しかし、めったに使用しない機能や日々変更がありうる機能まで組み込んでいくと、開発の手間やメンテナンスと運用でどちらが便利かという疑問にあたります。 そんなときは、必要なデータの部分や結果だけエクセルに出力するボタンを作成しておいて、あとは現場で「エクセルを使って加工してください」 とお願いしています。 エクセルの特徴として、誰でもが実際に毎日使用している、なじみがあるソフトである ということがあります。 メールで添付ファイルとしても送信できます。 エクセルについては、一般の方と呼ばれている方々のレベルアップを促したほうが会社全体としても強い組織になります。

y-h-1954
質問者

お礼

回答、有難うございました。 非常に、分かりやすく、共鳴できる部分も多数あり、大変に参考になりました。 また、不明点等出ましたら、宜しくお願いいたします。

その他の回答 (3)

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.4

意味合いが違ってましたらスルーしてください。 テーブル「T1」が以下の構成であったとします。 an  氏名   金額1   金額2 1   AAAA   1000   2000 2   BBBB   5000   3000 3   CCCC   2000   2000 4   AAAA   2000   3000 5   BBBB   1000   1000 an はオートナンバー ここから、氏名, 金額1, 構成比1, 金額2, 構成比2, 合計, 構成比3 を求めるクエリを考えます。 (実績はわからなかったので除外) 氏名をグループ化した集計「Q1」と、全体を集計した「Q2」から SELECT Q1.氏名, Q1.金額11 AS 金額1, Q1.金額11/Q2.金額21 AS 構成比1, Q1.金額12 AS 金額2, Q1.金額12/Q2.金額22 AS 構成比2, Q1.金額11+Q1.金額12 AS 合計, 合計/(Q2.金額21+Q2.金額22) AS 構成比3 FROM (SELECT 氏名, Sum(金額1) AS 金額11, Sum(金額2) AS 金額12 FROM T1 GROUP BY 氏名) AS Q1, (SELECT Sum(金額1) AS 金額21, Sum(金額2) AS 金額22 FROM T1) AS Q2 ; 結果は、 氏名  金額1  構成比1        金額2  構成比2         合計  構成比3 AAAA  3000  0.272727272727273  5000  0.454545454545455  8000  0.363636363636364 BBBB  6000  0.545454545454545  4000  0.363636363636364  10000  0.454545454545455 CCCC  2000  0.181818181818182  2000  0.181818181818182  4000  0.181818181818182 合計行も追加したいので、上記クエリに合計を UNION してやります。 合計行は最後にしたいので、ソート用の項目を追加します。 (ソート用は抽出する必要はありません) クエリの内容は以下。 SELECT 氏名, 金額1, 構成比1, 金額2, 構成比2, 合計, 構成比3 FROM ( SELECT 1 AS SN, Q1.氏名, Q1.金額11 AS 金額1, Q1.金額11/Q2.金額21 AS 構成比1, Q1.金額12 AS 金額2, Q1.金額12/Q2.金額22 AS 構成比2, Q1.金額11+Q1.金額12 AS 合計, 合計/(Q2.金額21+Q2.金額22) AS 構成比3 FROM (SELECT 氏名, Sum(金額1) AS 金額11, Sum(金額2) AS 金額12 FROM T1 GROUP BY 氏名) AS Q1, (SELECT Sum(金額1) AS 金額21, Sum(金額2) AS 金額22 FROM T1) AS Q2 UNION ALL SELECT 2 AS SN, '合計', Sum(金額1) AS 金額11, 1, Sum(金額2) AS 金額12, 1, 金額11+金額12, 1 FROM T1 ) AS Q3 ORDER BY SN, 氏名 ; この結果は、 氏名  金額1  構成比1        金額2  構成比2         合計  構成比3 AAAA  3000  0.272727272727273  5000  0.454545454545455  8000  0.363636363636364 BBBB  6000  0.545454545454545  4000  0.363636363636364  10000  0.454545454545455 CCCC  2000  0.181818181818182  2000  0.181818181818182  4000  0.181818181818182 合計  11000              1  11000              1  22000            1 後はこれをExcel出力、書式設定すれば完了すると思います。 Accessでの計算値をそのまま使うのではなく、計算部分はExcelの計算式で・・・・ であれば、以下が参考になりますでしょうか。 (VBA記述が必要になりますが) Excel への自力出力例(横計算式挿入) 構成比の解釈はこれでOK? ※データ量が多い場合の確認はしていないので、遅かったらごめんなさい

y-h-1954
質問者

お礼

非常に、詳細な回答、有難うございました。 しかし、私はVBAを理解しておらず、その部分では理解出来かねました。 でも内容は、分かり易く助かりました。 最後に、連絡遅くなり、申し訳ございませんでした。

  • hrkn-p
  • ベストアンサー率37% (68/182)
回答No.3

ANo.1です。 帳票形式が決まっているとのことですので、 1.印刷プレビューで最終頁を見る。 2.最終頁だけ印刷する。 などすれば、すぐに新しいテーブル、帳票など作らなくても、 すぐに合計は分かりますよ。 答えになってますかね?

y-h-1954
質問者

お礼

有難うございました。

  • hrkn-p
  • ベストアンサー率37% (68/182)
回答No.1

やりたいことによりますね。 ACCESSは「データベース」ソフトです。 なので、「大容量のデータ」を処理するのにはACCESSの方が確かに向いています。 大量データの処理しやすいACCESSで色々作業し、アウトプットとして表をきれいに(色をつけたりなど)エクセルで加工するて言うのは「ACCESS使い」の人は普通にやりますね。 繰り返しになりますが、ACCESSは「データベース」ソフトなので、とっつきにくいですが、大容量データの加工・抽出・結合など自由自在で楽しいソフトですよ。 ACCESSを覚える必要がない(覚える気がない)のであれば、データ処理に多少時間がかかってもよければ、エクセルで出来ることはエクセルでやればいいじゃないですか?

参考URL:
http://msactry.com/
y-h-1954
質問者

お礼

ご回答、有難うございます。但し、貴方の仰ることは、十二分に理解して居るつもりです。が、下記の様な作業に対しては、EXCELでの作業と比較すると、雲泥の差になるため、苦慮しております。(一般人が、全ての作業を実施することが前提となっております)。 作業内容は:10万件以上のデーターを集計し、最終的には下記の様な帳票を出力します。           ***XXX帳票XXX*** 1 氏名 実績 金額1 構成比 金額2 構成比 合計額 構成比 2 ・ ・ ・ 合計氏名 実績 金額1 構成比 金額2 構成比 合計額 構成比 (因みに、出力帳票の件数は決まっております。) となり、ACCESSでは、最終合計が1番を出力時点では、分からない為(別途テーブル等を設ければ、その限りではないと思うが)悩んでおります。 良いご教授を願います。

関連するQ&A

専門家に質問してみよう