• ベストアンサー

アクセスかエクセルか

私はエクセルにはある程度慣れていますが、アクセスを利用したことがありません。現在、エクセルを活用して、データの抽出を行っています。具体的には、120人程度の一月分の出席予定データから、一ヶ月分の各日毎の出席者一覧リストをマクロを使って作成しています。  今後、毎日翌日の出席用予定者一覧をその人が持つ固有のデータとともに一覧として出したいのですが、これはエクセルでもアクセスでもどちらでもできると思うのですが、どちらで作成するのが有効なのでしょうか。私が扱う分にはどちらでも問題ないのですが、私が会社からいなくなってから、パソコン関係があまり得意でない人でも操作できるようにしたいので、そのような観点からどちらが良いのかをアドバイスいたただきたいと思います。

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

  • ベストアンサー
  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.2

データが累積していくような場合はAccessにするほうがいいと思います。 データはAccessにおいて処理はExcelという方法もあります。(ADO)現在のマクロの修正で対応できます。 月ごとに新しいブックを作るなど累積しない場合ならそのままExcelでもいいんじゃないでしょうか。 先のことを考えるならマクロとデータにブックは分離したほうがベターです。

hiro1122
質問者

お礼

とても参考になりました。データは累積せずに、毎月更新して利用するものなので、このままエクセルで行くことにします。

その他の回答 (4)

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

ところで、現在のエクセルのファイルで満足なのでしょうか? 大体、仕事(システム)を分けると 1、入力 2、編集(入力した内容を変更する) 3、検索(或いは抽出) 4、印刷(報告書など) 5、メンテナンス(マスター、この場合、120人のメンバーの変更など) 6、分析(グラフ化など) などとなります。 特に、入力の作業が一番時間がかかってしまうことが多いです。 入力の作業が初心者(セルに入力ができる程度)でもスムーズにできる。 その他の作業もボタン一つで出来れば大丈夫ではないでしょうか? 将来、120人が1000人のデータにでもなるというのであれば、 複数のパソコンから入力する必要も出てくるでしょうし、アクセスの出番となるでしょう。 まあ、4~5年先となると、パソコンの性能も上がっているでしょうし 社員の方々も変わっていると思います。 また、会社の大きくなっているのか、現状のままのままなのか、それとも・・ と想像していたらきりがありません。 取り合えず、現在のエクセルで出来る部分を最高にシンプルな作業で出来る部分まで仕上げておけば如何でしょうか? もし将来に、その仕事が重要と判断されれば、会社がお金を払って専門家にシステム依頼すると思います。 その時に、エクセルで作業をしている手順が参考になると思いますが、 全く違ったものになることもあると思います。

hiro1122
質問者

お礼

ご回答ありがとうございます。私は一番下なのですが、主任さんが苦労しているものをVBAを使って楽にさせてあげたところです。その上の上司は専門家に依頼したいようですが、会社がYESと言わないので、当分はこのままエクセルでやっていくことになりそうです。

回答No.4

hiro1122さん 今晩は! >私はエクセルにはある程度慣れていますがアクセスを利用したことが >ありません。現在、エクセルを活用して、データの抽出を行っていま >す。具体的には120人程度の一月分の出席予定データから、一ヶ月 >分の各日毎の出席者一覧リストをマクロを使って作成しています。 それでは当分Excelで進んだ方が良いのでは? 最近のExcelは凄く進歩をしていて関数もマクロもAccessに似てきています。 Office98の頃は大規模データ管理はAccesssしかなく、私も連日図書館通いをし苦労した思い出が有ります。 その為か若い人はプログラミングし易いExcelユーザーが急増しています。何でもExcelでWordの方が趣旨に合った物でもExcelの状態です。 確かにAccessは面倒な部分が有るのは事実ですが、Accessで無ければと言うプログラミングも有るのは事実です。 >パソコン関係があまり得意でない人でも操作できるようにしたいの >で、そのような観点からどちらが良いのかをアドバイスいたただきた >いと思います。 後継者はいずれ若い人でしょうから質問者さんも含め現在のプログラムを苦労してAccessに切り替える必要が有るのでしょうか? これからもExcelに慣れた人が増えると思いますので従来通りでよいのでは無いかと思います。 参考にしたいサイトも圧倒的にExcelが多く有ります。 ■Excel をデータベースとして使う(Excel95/2000)↓ http://hp.vector.co.jp/authors/VA014071/tips/xl_dtbas.html 内容:データベースを作りたいときには Access のようなデータベースソフトを使うこともできますが、Excel を利用する手もあります。Access の方が処理が速いとか扱えるデータの件数が多いといったメリットもあります。しかし、われわれ教師が使う場合データの量はそれほど多くないのが普通ではないでしょうか。Excel 97/2000 では1枚のワークシートで 65,536 行のデータが扱えます(ただし、こんなにデータ量が多いとかなり遅いでしょうが)し、1つのブックの中で複数のワークシートが使えるので、場合によっては Excel で十分だと思います。また、Excel の方が印刷や集計が簡単にできるという利点もあります。ただし、Excel をデータベースとして使う場合、注意しておかなければならないことやコツがあります。今回はこの点について紹介します。 ■Excelをデータベースとして活用する方法↓ http://kokodane.com/kihon8.htm 内容:Excelには、データベース化したものから目的のデータを検索したり、項目別に集計したりできるデータベース機能が用意されています。また、データベースから条件に合致するデータを抽出できる 「データベース関数」も用意されています。 データベース機能を使うには、データをExcelがデータベースとして認識できるように、「リスト」という形式の表で作成する必要があります。(解説を参照下さい) ●Visual Basic または VBA から ADO を Excel データで使用する↓ http://support.microsoft.com/kb/257819/ja 内容:Excel ワークシートをデータ ソースとして ActiveX データ オブジェクト (ADO) を使用する方法について説明します。また、Excel 固有の構文上の問題や制限事項についても解説します。この資料では、OLAP やピボットテーブル テクノロジ、Excel データのその他の特殊な使用法については扱いません。 ■ExcelをDBとして扱う↓ http://ameblo.jp/tech-note/entry-10020358375.html 内容:使っていてのノウハウは ・「保存されているブックのデータでないとダメ」のようです。 ・通常のSELECT、テーブルのJOINも可能。 ・DELETEができなかったので、使わない項目を削除フラグとして扱い、UPDATEで書き換え、SELECTで条件に入れた。 ●VB または VBA から ADOX を Excel データで使用する↓ http://support.microsoft.com/kb/303814/ 内容:Excel データを ADOX から使用するための方法を以下の内容に沿って説明しています。 以上の事でExcelを本格的にAccessライクに使用できます。 ■Excelのデータベース機能↓ http://blog.dreamy.boy.jp/?eid=694557 内容:Excelには、データベース化したものから目的のデータを検索したり、項目別に集計したりできる機能が用意されています。 また、データベースから条件に合致するデータを抽出できる「データベース関数」も用意されています。 データベース機能を使うには、データをExcelがデータベースとして認識できるように、「リスト」という形式で作成する必要があります。 図解で解説は→http://dreamy.boy.jp/kihon8.htm 面倒な時はソフトも有ります。 ▼Excel なんでもデータベース(フリー?)↓ http://www.vector.co.jp/soft/win95/business/se275904.html 内容:汎用型データベースソフトです。家庭では蔵書管理、ビデオテープ管理等、業務では文献管理、機器管理、名簿管理等が簡単に構築できます。以下の特徴があります。 1.自由設計であなたの望みのデータベースを簡単構築。 2.フィールド(項目)数は、最大253項目。また、大、中、小項目と3ランク構成で、わかりやすいデータベース構築。 3.リスト表示、カード表示、プリント表示の3表示モード。 4.プリント表示は自由レイアウトで、レコードの連続印刷機能あり。 5.充実した文字変換機能。全角/半角変換、アルファベットの大文字/小文字変換、カタカナ/ひらがな変換、算用数字/漢数字変換。 6.外部マスタデータ参照可能。(Excel2000以上が必要) ▼エクセル de データベースII↓ http://www.vector.co.jp/soft/winnt/business/se410473.html 内容:試用期間での機能制限はありません。 自由設計タイプ汎用データベースソフトで、家庭では蔵書管理、ビデオテープ管理等、業務では文献管理、機器管理、名簿管理等が簡単に構築できます。以下の特徴があります。 1.自由設計であなたの望みのデータベースを簡単構築。 2.フィールド(項目)数は、最大253。また、大、中、小項目と3ランク構成で、わかりやすいデータベース構築。 3.リスト表示、カード表示、プリント表示の3表示モード。 4.レイアウト自由のプリント表示モードでは複数のレイアウト画面を保存して切替可能。また、画像データ表示、タックラベルシート等への多面印刷機能。 5.充実した文字変換機能。全角/半角変換、アルファベットの大文字/小文字変換、カタカナ/ひらがな変換、算用数字/漢数字変換。 6.外部マスタデータ参照可能。 尚、本ソフトはExcelマクロ版ブックですので、Excel2000以上が別途必要です。(シェアーソフト1.575円税込み) (Excel2007では環境によって正常に動作しない場合があります) ▼エクセル de データベース(Excel2003/2007)↓ http://soft.rifnet.or.jp/excel-db/ 内容:いままでは見積など同じ形式の書類を作成する場合シートをコピーし同じブック内に同形式のシートがドンドン増え管理が大変でした。このソフトを使うことでテンプレートシートひとつでデータは外部のテキストファイルに保存されますのでブックもスッキリ操作も軽快です。 便利な検索機能もあり、検索したい項目を選んで、語句を入力するだけで、以前のデータを簡単に検索できます。 データベースソフト等の別インストールは一切必要なくEXCELだけでデータベースが作成できる夢のようなソフトです。(\10.500) と言う事でExcelで当分お使いに成った方が良いと思います。

hiro1122
質問者

お礼

沢山の情報をありがとうございます。 エクセルで行くことにしました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

この質問コーナーのエクセル関係を見ていても、エクセル関数でやりたい(関数でしか出来ない)人が多い。VBAがどの程度のモノか(どこで応用しているのか)質問では書いてないので判らないが、 エクセルVBAでなく、関数でやっておけば、後継者はまだ関数の勉強(意味を読み解いて、修正とかエラーになる原因が判る)がしやすいと思う(解説本も多い)。 もっと質問の作業の処理をこの質問文にはっきり書いてくれれば、アドバイスできたのにと思う。 (1)>120人程度の一月分の出席予定データから 作業を始めるときは、120人分全て(多分全行)について出席予定日データは入力済みか (2)そうなら、フィルタオプションの設定や、「imogasi方式」(注)で出席指定日の行のン抜き出しを行う。 (注)Googleででも「imogasi方式」で照会すれば、関数による抜き出し問題の例(私が回答したもの)が多数出てくる。 >をその人が持つ固有のデータと共に このデータは、1人分は、多分1行多列にわたるデータ形式になっているのでしょう(一覧表)。 そうなら、これをVLOOKUP関数で会員ID番号などで検索して、該当者行の各列データを参照すればよい(持って来ればよい)。 A。 行形式=多人数分一覧表。リスト・テーブル形式。 B。シート形式=1人1ページ。請求書のような形式。 の2つあるが、質問にはどちらとも書いてない。 == エクセルでも「MSクエリ」があるのをご存じか。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/filter2.htm

hiro1122
質問者

お礼

確かに質問の仕方が甘いのですが、皆様の回答は私にはとても参考になりました。 特にアクセスで行きなさいという意見がないこと自体がそのまま参考になっています。¥^-^ 今後もお世話になるかもしれません。ありがとうございました。

  • soixante
  • ベストアンサー率32% (401/1245)
回答No.1

どちらにしても、パソコンが得意でない人が使うことを前提にするなら、あなたが去る前に 出来るだけシンプルな形の構造にして、マニュアルを完備しておくことのほうが有効じゃないでしょうか。 なぜなら、今のエクセルで残した場合、マクロでエラーが出たら、誰か対処できる人はいるのでしょうか。 抽出条件の変更や、出席者のデータ追加などがあったりした場合とか、コードをメンテできる 人がいないと、エラーやそのような変更が出た場合、誰も「修理」できずに、結局別の方法が 編み出されるでしょう。 120名程度の情報ならば、日付のオートフィルタで済むような気もしますが。 その人の持つ固有データなんかを他のシートに入れといて、検索してそろえればよいでしょうし。 なんぼ苦手な人たちだって言っても、その程度のことはやってもらわないと、エクセルがただの方眼紙 となってしまいますからね。 アクセスで残す場合 複雑な条件を用いた抽出なんかをやるのならアクセスのほうがよいのかもしれませんが、 120件程度でしたら、どうなんだろ?と。 まあ、決まった形なんだったら、クエリを作っておいて、それを実行するだけにしとけばいいんでしょうけど。 マクロを使うにしても結局さっきと同じ問題が発生するでしょうし。 結局のところ、誰か一人でもいいからきちんと出来る人を設けておくこと、教育しておくこと が重要な気がします。

hiro1122
質問者

お礼

回答ありがとうございました。参考になりました。

関連するQ&A