この記事はチームで使う業務システムを構築する上でのエクセルとアクセスの違いについてと、そして業務システムでエクセルが重くて遅いと困っているという問題をエクセルとSharePointの連携が解決策になる事を書いています。
(動画時間:5:57)
<< エクセル+SharePointの連携シリーズ >>
第一話:エクセルとBIツールの違い。中小企業ではエクセル+SharePointが最強な理由
第二話:← 今回の記事
第三話:エクセルとSharePointのADO連携の仕方、概要(ADOとSQLの超簡単な説明も)
第四話:業務システムはエクセルかアクセスどちらを使うか?またエクセルの重くて遅いの解消法
第五話:エクセルとSharePointの連携の仕方、概要(ADOとSQLの超簡単な説明も)
第六話:業務改善をする時に経営ダッシュボードも一緒に作りましょう!
第七話:改善プロジェクト事例:業務改善と経営ダッシュボード設置プロジェクト
エクセルが重くて遅くなる「エクセル特有の事情」とは?
こんにちは、リーンシグマ、ブラックベルトのマイク根上です。業務改善コンサルをしています。
最近の僕の動画でエクセルとSharePointの連携でダッシュボードを作る提案をしています。⇒「優れたダッシュボードの三つの条件。僕が作った経営ダッシュボードをお見せします」
この方法はダッシュボードだけでなく他の用途にももちろん使えて、業務システムもこれで作る事が出来ます。
しかし最近のエクセルは使えるデータ数も格段に増えたし、エクセルのマクロだって本来は他のコンピュータ言語と変わらない速さに出来るのですが、配列を使うなどの数ある高速テクニックを使わないとやはり遅くなります。
また「エクセル特有の事情」で残念ながら「エクセルは遅い」というステレオタイプの人も多いです。
その「エクセル特有の事情」とはまず「一つのファイルに全ての情報が入っている」事です。例えば一般的に業務システムは「データ入力機能」、そのデータをためておく「データ保存機能」、そして分析などの結果を見る「出力機能」があります。エクセルだとそれらの全ての情報が一つのファイルに入っています。
もちろんエクセルは個人利用が本来の目的でしたのでこの方が便利なのですが、エクセルの機能が拡張されるにつれて業務システム的に使われる事も多くなってきています。
しかし、最初の頃は問題が無くても使っていくうちに入力されるデータ量が増えてきてファイルサイズが拡大し、速度が遅くなり不安定になってしまうのです。
エクセルの重くて遅いの解決策
もちろん無駄な数式や古いデータを削除していく事でこれは少し改善されますが根本解決ではないです。その為には先ほどの「入力機能」、「データ保存機能」、「出力機能」のうち一番容量を取る「データ保存機能」つまりデータベースをファイルの外に持つ事が根本解決になります。
複数のエクセルファイルを使う事も出来ますが、不安定さは残ったままだし信頼性は高くはないです。
そこでSharePoint Onlineを使うのです。
もしすでにOffice 365をお使いであれば追加のライセンス料なしで使えるし、Office 365の様々な機能で情報の一元化や情報共有が簡単に出来て他の多くの業務改善も一緒に出来る様になるのです。
クラウドですのでPCがWIFIに繋がっていればユーザーの場所を問いません。エクセルでも複数の人が同時に作業をすることも出来ます。
PowerAppsでアプリを作れば今まで紙とペンでやっていた業務も改善したり、その情報を二次利用する事も可能になります。
MSアクセスとエクセルとの比較
もう一つの選択肢はマイクロソフトのアクセスをデータベースとして使う事です。エクセルと併用してデータベース機能をアクセスでやる事は実はよく行われます。
この場合はアクセスのライセンス料が追加で掛かりますし、アクセスファイルをインストールするPCをどこかに置かなければなりません。ですが、僕が思うにデータベースとしてアクセスの方がエクセルより優れていると思う部分が3つあります。
アクセスではデータを安全に管理する仕組みがある。
アクセスの本来の目的がデータベースですから「データを完全に管理する仕組み」が最初から備わっています。
先ほど言いました「入力機能」、「データ保存機能」そして「出力機能」が最初から分かれていて、ユーザーがデータの値や表の型式を勝手に書き変えたり出来ないのでデータはエクセルより数段安全ですし、アクセスなら同時入力も出来ます。
しかし、これに関してはエクセルとSharePointの連携で同じ状況を実現出来ます。逆にアクセスではこの目的のために多くの制御がありユーザーの融通があまり効かず、小さい変更も自分で出来ないです。
アクセスではデータベース言語、SQLが全ての部分で使える。
二つ目のアクセスの優位性はアクセスではSQLが全ての部分で使えます。SQLはデータベースに特化したコンピュータ言語でデータの集計や加工が簡単にしかも高速に行えます。
エクセルの似た機能はピボットテーブルですがSQLの方が高性能です。
朗報はSharePointとエクセルの連携でもこのSQLが使える事です。これを初めて僕がエクセルで実現出来た時は本当に感動しました。お使いのインターネットの速度にもよりますが、クラウドからデータをもってきているにも関わらずあっという間の速さでした。
アクセスなら複数のテーブルを簡単に結合をすることが出来る。
三つ目のアクセスの優位性はSQLを使って複数の表、テーブルとも呼びますが、簡単に結合出来るのです。
結合とは複数のテーブルをあたかも一つのテーブルとして集計が出来る便利な機能なのですが、SharePointとエクセルの連携では残念ながらこれは使えません。
しかし、ここでは細かい説明はしませんが、エクセルでは配列とVBAを使えば高速で同じ結果を得られます。
この様にエクセルとSharePointの連携でアクセスに対するエクセルの問題点が全てクリアー出来るのです。
更にユーザーは使い慣れているエクセルの強いグラフ機能や印刷機能を使う事も出来るのです。
中小企業の業務システムはこれがベストだと僕は思います。実際に今までアクセスで業務システムを運営していた会社が使い勝手やメンテナンスが自分達で出来ない理由でエクセルに移行する会社も少なくありません。
今のクラウドの時代だから実現が簡単に出来るこのエクセルとSharePointの連携をちょっと研究される事をお勧めします。
<< エクセル+SharePointのADO連携シリーズ >>
第一話:エクセルとBIツールの違い。中小企業ではエクセル+SharePointが最強な理由
第二話:← 今回の記事
第三話:エクセルとSharePointのADO連携の仕方、概要(ADOとSQLの超簡単な説明も)