業務改善と標準化を同時に実現:MS 365業務システム開発

エクセルとSharePointの連携の仕方、概要(ADOとSQLの超簡単な説明も)

    
エクセルとSharePointの連携の仕方、概要(ADOとSQLの超簡単な説明も)
\ この記事を共有 /
エクセルとSharePointの連携の仕方、概要(ADOとSQLの超簡単...

この記事では経営ダッシュボードや業務システムを作るためのエクセルとSharePointの連携の仕組みを分かり易く説明します。その接続の中心となる接続プラットフォームのADOとデータベース専用言語のSQLについても図解しています。

(動画時間:6:37)

エクセルとSharePointの連携は「任天堂戦略」

 

こんにちは、リーンシグマ、ブラックベルトのマイク根上です。
業務改善コンサルをしています。

 

最近の僕の動画はこのエクセルと
SharePointの連携の話題が続いています。

 

MS 365によるシステム概念図 ランディングページへ

 

ビッグデータの時代と言われて久しいし、
最近ではAIやIoTの話題で持ちきりですが、
特に中小企業の大多数の会社ではそう言ったテクノロジーから
取り残されてしまっているのではないでしょうか。

 

僕はこのエクセルとSharePointの連携手法で
中小企業やご自分の部署で抱えている問題が
解決できるダッシュボードや業務システムを
安価で手軽に作れてしまうのをお知らせしたいのです。

 

なぜ安価で出来るかというと、
この手法ではエクセル、SharePoint、
また後で説明しますが、ADOやSQLと言う技術、
どれも昔からある技術です。
最新技術じゃないですので安いのですが、
使い道はまだとてもあるのです。

 

僕はこれを「任天堂戦略」と呼んでいます。
ゲームの任天堂は敢えて最新技術ではない
数年前の技術を、知恵を使って採用する事で
安くて素晴らしい商品を作り続けているのです。

 

このエクセルとSharePointの連携はまさに「任天堂戦略」で、
ちょっと前の技術を有効利用して
安くて素晴らしいシステムを作れるのです。
今日はそれをどの様に実現できるかを説明します。

 

エクセルとSharePointの連携を使った業務システム例

 

作業時間記録アプリ

 

例えば上の画像は僕が作ったプログラムで、
作業時間記録アプリの画像です。

 

左の表から作業をしているプロジェクトを
クリックすると作業時間の記録が始まり、
それと同時に過去の作業履歴が出てきます。
そのデータはクラウドのSharePointから来るのです。

 

右の「作業終了」ボタンを押すと
今の作業時間がクラウドに記録されるのです。
SharePointとの連携では
エクセル上のデータを間違って削除したり編集しても
クラウドのデータは変更されませんので
データの信頼性は上がります。

 

良い業務システムを作るコツ、「直感的」にすること

 

これは簡単な業務システムの例ですが、
このエクセルとSharePointの連携で
在庫管理や顧客管理などのシステムも作れます。

 

そこで良い業務システムを作るうえで
一番重要な事は何でしょう?
それは使い勝手を「直感的」にする事です。

 

「直感的」を実現するのに必要な事は
「不必要なものを全て取り除く事」です。
スマホのアプリと同じように各場面、場面で
その時必要なものしか見せない事です。

 

アプリを直感的にするやり方

 

先ほどのアプリに戻って、
例えば作業時間の記録を開始すると
表示ボタンが変わります。
この時に使う可能性のあるこの二つのボタンだけが
表示されています。

 

記録を中断したら、
その二つのボタンは次に記録が開始する時まで
非表示にするとより直感的に出来るし、
間違い防止のポカヨケにもなるのです。

 

エクセル上の全ての画像はVisibleと言う属性があり、
それをVBAでTrueにしたり、Falseに切替えることで
表示、非表示を操作できるのです。

 

SharePointリストをデータベースにする

 

次にこのシステムの裏側をお見せしたいと思います。
それはSharePointですが、それには沢山の機能がありますが、
その中のSharePointリストを使っています。
そのリストがデータベースとして使えるのです。

 

SharePointではサイトを自由にいくつも作れます。
僕はサイトをフォルダーの様に
データベースを整理するのに使っています。

 

SharePointサイトから一から作成する方法

 

サイト上の「新規」をクリックすると
色んなパーツを追加出来ますが、その中に「リスト」があり、
下図がさっきのアプリのデータベースのリストで、
エクセルの様に行と列で出来ています。

 

SharePointリストの例

 

最後の列の右の「列の追加」をクリックして
データの列を簡単に増やせます。

 

エクセルで表を作成し、エクスポートする方法

 

もっと簡単にまとめて作る方法もあります。
それは最初にエクセルで表を作ってから、
メニューバーの「ホーム」、「テーブルとして書式設定」から
好きな書式を選んで「OK」を押すと、
上に「エクスポート」ボタンが出てきますので、
それからSharePointにエクスポートして
SharePointリストを簡単に作る事が出来ます。

 

エクセルとSharePointの連携のエンジンはADOとSQL

 

最後にどうやってSharePointと連携を
しているかを図解しましょう。

 

プログラム内で、あるボタンやセルを押したら
VBAの命令の実行が始まります。
VBAで色んな事が出来ますが、
今回はADOとSQLを中心に話します。
VBAのコード内にADOとSQLの実行命令文を入れるのです。

 

エクセルとSharePointの連携の仕組み1

 

ADO(ActiveX Data Object)、接続プラットフォーム

 

ADOはマイクロソフトが開発した
接続プラットフォームで、それを使い、
色んなデータベースに接続する事ができます。

 

エクセルとSharePointの連携の仕組み ADO

 

その中にSharePointリストの接続情報を
入れる事で連携が出来るのです。
最初の太文字が接続文字列の始まりですが、
この後に「自分のSharePointサイトのURL」と
「接続するSharePointリストの参照番号」を入れます。
それが自分のデータベースの住所になるのです。

 

SQL(Structured Query Language)、データベース専用の補助的なプログラム言語

 

エクセルとSharePointの連携の仕組み SQL

 

次の太文字がSQL文で、ここで
「どのデータをどの様に加工して持ってきたいか」
の指示する文を書くわけです。
SQLはマイクロソフトが発明したわけではありませんが、
データベース専用の補助的なプログラム言語です。

 

全ての元データをエクセルに持って来て
エクセルで計算させるのではなく、
データベースで集計や計算をさせて、
結果だけをエクセルに持ってくる事が出来るので、
エクセルファイルを軽く速く保てるし
安定度も上がるのです。

 

SQL文がSharePointに行き、
SQLの計算結果を出してエクセルの好きな場所に
出力する事が出来ます。
お使いのインターネットの速さとデータ量にもよりますが、
驚くほど速く結果が出てきます。

 

エクセルとSharePointの連携の仕組み2

 

そしてデータを持ってくるだけでなく、
データベースへのデータの
書き込みや編集もできるのです。

 

以上がエクセルとSharePointの連携の概要でした。
Microsoft 365のおかげでクラウド
コンピューティングが
自分達でも
手軽に構築できる時代になったのです。

 

これからITシステムのバージョンアップを
検討されている中小企業の皆さんや、
大きな会社でも自分の部署で使う
業務システムを作ってみたい方にも
このエクセルとSharePointの連携はかなり有効です。
ぜひ活用してみて下さい。

 

<< エクセルとSharePointの連携シリーズ >>