「開発でエクセルとアクセスのどっちを使う」論争の決着

Excel開発コラム

「開発でエクセルとアクセスのどっちを使う」論争の決着

投稿日: 2020年06月04日 カテゴリー:Excel Access,Excelシステム開発,業務効率化,経費削減

業務システム開発ExcelAccessどっち

「開発でエクセルとアクセスのどっちを使う」論争の決着、第三の選択肢、エクセルとSharePointの連携。

 

本コラムでは、「業務システム開発」という必要性に迫られた企業が、その開発会社の選定において、ExcelVBA開発を選ぶか。

 

AccessVBA開発を選ぶか、また、運用に関しては、昨今Microsoft社が力を注いでいる『Microsoft 365 SharePoint 活用』に関することなども、ご紹介したいと思います。

 

Excel業務システム開発Access業務システム開発

 

 

 

 

 

 

エクセルとアクセスの業務システム開発でよくある質問

このサイトに来られる皆さんの中で、自社の業務システムを作って業務の自動化をしたいが、以下の様な疑問をお持ちの方が多いようです。

 

1.エクセルで作ると安いけどなんか心配。
2.複数人で使うからアクセスを使ってるけど、融通が利かなくて困ってるよ。
3.複数人で利用するからやっぱりアクセスじゃないと駄目かな。
4.複数拠点で使いたいからそもそもアクセスでもできないよね。
5.セキュリティーが重要なのでエクセルはアウトでしょ。

 

この記事ではこれらの疑問にお答えして、更に今までになかった第三の選択肢(Share Point Online)もご紹介します。

 

(1/5)「エクセルで作ると安いけどなんか心配」の誤解

多くの方が誤解をしていて「エクセルはグラフや表計算をするだけのソフトウェア」と思われています。

 

確かに、いつも見るブランクのワークシートを見ていると、これが業務システムになるとは思えないかもしれません。エクセルにはアクセスと同じ様なユーザーフォーム(UserForm)と言う機能があります。

これにより、それぞれの業務に最適化した使い易いメニュー画面や入力画面を作る事もできます。

 

また、「エクセルのマクロは遅い」と言う人もいます。マクロはエクセルやアクセスに自動で作業をさせる機能です。

 

ちなみにそれをプログラムするコンピューター言語が「Visual Basic for Application」で略してVBAとよく呼ばれます。

 

これは正直「エクセルのマクロ」が遅いのではなく、その多くは、プログラム記述の仕方に原因があります。

 

Excelマクロ開発「ExcelVBAプログラミング」において、『シート操作』、『セル操作』、『コピー&ペースト』などは、恐ろしく速度が遅いのですが、『配列処理』に代替することで、他のプログラミング言語同等の処理速度を再現できるのです。

 

これは、技術的なことではなく、「知っているか・いないか」だけの違いなのですが、オフィス田中さんの記事で紹介されているとおり「ExcelVBA」開発で留意すべき点を実行するだけで、普通に実践すれば、高速化が図れます。

 

VBA高速化テクニック
http://officetanaka.net/excel/vba/speed/
[引用元:Office TANAKA]

遅いプログラムの典型例はVBAでシート上でコピペを繰り返すコードだと遅くなります。

 

そうではなく、メモリ内で全て集計して一度にシートに結果を出すと10万件のデータ処理も1~2秒程度で出来てしまいます。

 

以下は、弊社へのVBAプログラマ応募者用の課題サンプルですが、完成型を動作させることで、その速度感を体感いただけますので、是非、お試しください。

 

↓ダウンロード

集計ツールSample_【第14版】_10万件_CellNets完成版1秒.xlsm

https://www.cellnets.co.jp/file/VBATrial01_Data100000.zip

 

 

 

 

 

ExcelVBA処理スピードって速いの?

アンケート調査・集計・分析ならExcelVBAでしょ

 

まず、実際の処理スピードや、操作感などの動作を体感いただく為、サンプルをご用意いたしました。

以下のSampleをダウンロードいただき、まずは、実際の処理速度を体感ください。

ダウンロード後の操作手順につきましては、動画にてご紹介とさせていただきます。

下記サンプルで、実際の速度を体感いただけます。
anketo_kaito_make.zip【206KB】

Excelマクロ(VBA)デモ動画(3分53秒)※音声付き

 

(2/5)「複数人で使うからアクセスを使ってるけど、融通が利かなくて困ってるよ。」

ユーザーが一人か二人の自動化プログラムは開発費が安いし、高機能に作れるエクセルの一択です。

しかし、ほとんどの業務ではもっと多くの従業員が関わるし、業務の部分的にIT化するのではなく、最初から最後までを管理できる業務システムにして、飛躍的な改善を享受したいものです。

 

となると、エクセル単体ではだめです。そうなるとアクセスとなりますが、以下の様な問題を聞きます。

NO 課題
(1) アクセスだと様々な制約があり、柔軟性の面で使わなくなってしまった。
たとえば、注意事項を促したい箇所に、「色文字を指定できない。」など
(2) 顧客からのイレギュラー対応には手間がかかりすぎて使えない。
エクセルなら、イレギュラー処理も簡単にできるのに
(3) 社内にアクセスを使える人材がいないので開発から、
簡単なメンテも全て外注で高コスト

このような理由で実際にアクセス業務システムからエクセルに切替える企業様も少なくありません。この時はユーザーが操作する部分をエクセルで作り、エクセルとアクセスを連携させて大量のデータを保存する部分をアクセスで作る事もできるのです。

 

これですと、アクセスだけで作るよりも開発コストは安くなります。以上の三つのパターンをまとめたのが次の表です。

エクセル&アクセスシステム比較表

 

 

 

 

 

 

(3/5)複数人で利用するからやっぱりアクセスじゃないと駄目かな。

「外出先や複数拠点でも使いたい」そんな要望解決に関する第三の選択肢、エクセルとSharePointの連携について。

エクセルとアクセスの連携はよく使われますが、データベースにするアクセスファイルを社内の共有フォルダーに入れておく必要があります。もし、そのような環境をお持ちでないと作るのに費用が掛かります。

 

また最近の働き方改革によって在宅勤務や外出先からもこの業務システムを使いたいところです。その為には自社サーバーをVPNで繋ぐなど、やはり費用が掛かります。

 

実はアクセスを使わずに上記の初期費用を掛けずにできる方法があります。

それが業務改善ビジネスYouTuber マイク根上さんが提唱している「エクセルとSharePointの連携」です。

 

↓業務システムはエクセルかアクセスどちらを使うか?またエクセルの重くて遅いの解消法

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

 

↓エクセルとBIツールの違い。中小企業ではエクセル+Sharepointが最強な理由

 

これはユーザーインターフェースの部分をエクセルで作り、大量データを保存するデータベースをクラウドのSharePointリストを使うのです。これですとインターネットに繋げればどこからでもその業務システムを使う事ができます。

 

 (4/5)「複数拠点で使いたいからそもそもアクセスでもできないよね。」の疑問。

これでアクセスと違って広範囲の業務システムを作る事もできます。例えば複数の支店で同じ業務システムを使う事も可能です。

SharePointはもともと情報共有チームウェアですので、多くの人が同時に接続しても全く問題がありません

 

Office 365のSharePoint Onlineとは?
https://licensecounter.jp/office365/blog/2019/07/what-is-sharepoint-online.html

[引用元]SB C&S社 Office365相談センター

 (5/5)「セキュリティーが重要なのでエクセルはアウトでしょ。」の疑問。

最近は中小企業でもサイバー攻撃や個人情報の漏洩の問題が大きくなってきました。日本では自然災害のリスクも高いです。これに関しては自社のサーバーに入れたアクセスファイルもリスクが高いままです。

 

SharePointはクラウドでマイクロソフトによって安全に管理されています。

 

Microsoft社のセキュリティについて興味深い記事を発見したのですが、それによれば、世界で一番サイバー攻撃に会っているのはアメリカの国防省(※通称:ペンタゴン)でマイクロソフトは位とのこと。

 

ですから最先端技術によってSharePointは守られているのです。またマイクロソフトのサーバーは世界中にあり、一か所が災害で破壊されてもデータは他でミラーリングで保存されていて、回復されるのでほぼ100%守られるのです。

 

マイクロソフトは「セキュリティ」を最優先に考える

[引用元] IT Search

https://news.mynavi.jp/itsearch/article/security/1534

また、SharePointに接続する時は、[Microsoftの認証システム] を使いますので社内でのアクセス権の管理も安全で簡単で、これで個人漏洩のリスクも低くすることができます。

 

この様にエクセルとSharePointの連携では自社のデータを安全に保管できるのですが、更にこの手法ですとPowerAppsと言う携帯アプリを作る事もできます。

 

これにより、今までPCの無い現場で紙とペンだけでやっていた業務の部分も業務システムの中に入れてそのデータの検索や二次利用をできる様にもできます。エクセルとSharePointの連携手法はアクセスのみで開発するよりも安く作る事ができます。

 

なぜマイクロソフトはサイバー攻撃に強いのか? (引用元:著者 香山哲司氏 出版社:技術評論社:2014/1/6) 【図解】リーンシックスシグマ (引用元:著者 眞木和俊氏 出版社:ダイヤモンド社:1版 2012/10/18)

これだけのメリットがあり、低コストで開発できるのでこれからはエクセルとSharePointの連携の一択となっていくでしょう。

 

参考までに、マイク根上氏の提唱する「リーンシックスシグマ」とあわせ、「なぜマイクロソフトはサイバー攻撃に強いのか?」という書籍を購入~一読してみました。

 

禁止するだけのセキュリティ対策だけでは何故だめなのか、など、興味深いコメントも参考になりました。

 

本コラム記事にご興味のある方は、ZoomまたはTeamsオンラインにて、『Microsoft SharePoint ADO接続によるExcelデータ共有(LIST機能)』のデモンストレーションもご覧いただけますので、お気軽にお問い合わせいただければ幸いです。

 

 

業務システム開発で、AccessかExcelかで迷ったら?!

業務システム開発で、AccessかExcelかで迷ったら?!
両者の違いについて、良く、お客様から聞かれることが多いので、できるだけ分かりやすく、ご説明したいと思います。

 

「テーブル」、「フォーム」、「クエリ」など、難しい構造や仕組みについては、他のサイトでも、多数解説されているため、セルネッツでは、Accessの技術的な構造などは割愛し、システム運用する際の相違点について、解説したいと思います。

 

 

 

 

 

 

 

<関連する記事>

業務システム開発で、AccessかExcelかで迷ったら?!

アンケート調査・集計・分析ならExcelVBAでしょ>

これら全てがExcelマクロ開発!導入事例をご紹介!

Excelシステムって複数人でも使用できるの?

Excelシステム開発の長所と短所

 

業務効率化ご案内

Excel業務効率化支援ツール

 

業務効率化セミナー情報

 

セルネッツお客様の声インタビュー

 

株式会社セルネッツ