取り敢えずExcelで良いのか ? - 業務見直しのススメ その1


世間のコンサルティング会社やリサーチ会社では、企業における「BIツール」の導入を阻んでいる理由として「Excelの存在」を挙げて、声高に「脱Excel」を唱えています。


確かに、「BIツール」としてExcelを利用するのは、利用ケースによっては無理があると思います。


「BIツール」とは、「Business Intelligence(ビジネス・インテリジェンス)ツール」の略語ですが、サーバー等に蓄積された大量のデータを収集して分析するツールになります。


この「BIツール」を上手く使いこなせれば、例えば、数年分の売り上げデータと気温データを組合せて、月毎の気温変動に伴う売れ筋商品を分析する事で、商品戦略を立案したりする事が可能になります。


収集するデータ量が、1年分くらいなら、それほど大量のデータにはならないかもしれません。


しかし、これが全国数100店舗分で、かつ過去10年分のデータ等となると、とんでもなく大量のデータとなりますので、このような大量データを「ビッグデータ」と呼び、「ビッグデータ」専用の解析ツールが必要になります。


このように「ビッグデータ」の収集/解析に、Excelを使うのは確かに無理がありますが、これが数百〜数千件分のデータであれば、私はMicrosoft社の営業ではありませんが、充分、Excelで対応可能だと思います。


まあ、既に、専用の「BIツール」を購入しているのであれば、何も、無理にExcelを使わずに、「BIツール」を使えば良いと思います。


但し、一般的に「BIツール」と呼ばれているパッケージ・ソフトウェアは高額で、利用形態にもよりますが、ライセンスだ、何だかんだで、数百万円程度の費用は掛かかります。


このため、Excelで充分運用に耐えているのであれば、何も無理に、高額な「BIツール」を購入する必要はないと思います。


そこで、今回のブログでは、次のような内容で、Excelの活用方法を調べて見たいと思います。


Excelの歴史
・マクロとVBAの違い
Excelの功罪
Excel不要論
Excelの問題
・今後のExcel


しかし、このExcelに関する話題は、ボリュームが大きくなってしまいましたので、前後半の二部構成として、今回は、前半部分として、次の3点を取り上げたいと思います。


Excelの歴史
●マクロとVBAの違い
Excelの功罪


それでは今回も宜しくお願いします。

Excelの歴史

Microsoft Excel(以下、Excel)の要/不要論を検証する前に、まずはExcelの歴史を、「雑学」的に紹介したいと思います。


Excelは、平成元年(1989年)に、「Excel 2.1」を発売したのが、その始まりと言われています。


しかし、その前身は「Microsoft Multiplan(マルチプラン)」と呼ばれるソフトウェアで、昭和57年(1982年)に、Apple社が発売していた「APPLE Ⅱ」と言う、(当時の呼び方で)ホーム・コンピュータで動作する表計算ソフトウェアです。


発売当初は、非常に好調な売れ行きだったようですが、「Multiplan」より遅れること1年、昭和58年(1983年)に、「ロータスソフトウェア社(現:IBM社)」が、IBM PC/AT互換機でも動作可能な表計算ソフト「Lotus 1-2-3」を発売しました。


「Multiplan」も、その後、MS-DOSやIBM5550等、当時、PC市場でシェアが高かったOSでも動作するよう移植されましたが、「Lotus 1-2-3」は、最初からIBM PC/AT互換機で動作可能だった事から、表計算ソフトとしては、「Lotus 1-2-3」が爆発的人気となり、「Multiplan」は、「Lotus 1-2-3」との「表計算ソフトウェア」のシェア争いに破れてしまったそうです。


ちなみに当時は、表計算ソフト「Multiplan」、グラフ作成ソフト「Multi-Chart(マルチチャート)」、簡易データベース「Multi-File(マルチファイル)」の3個のソフトウェアで、「Multiツール・ファミリー」を構成していたそうです。

----------------------------------------------------------------------------------------------


北米でシェアを独占した、「Lotus 1-2-3」ですが、多言語化等、ローカライズに時間が掛かり過ぎた影響で、ヨーロッパや日本ではシェア拡大に失敗し、北米を除く地域では、逆に「Multiplan」がシェアを伸ばしていたそうです。


その後、「Multiplan」は、昭和60年(1985年)に「Macintosh(通称Mac)版」を発売し、Macの代名詞ともなるGUI(Graphical User Interface)操作に特化した改良を施す事で、ベストセラーになったそうです。


さらに、昭和62年(1987年)、当初からの予定通り「Windows版」を発売しましたが、この「Windows版」は、処理速度や操作性に、さらなる改良を施すと共に、「Lotus 1-2-3」とのファイル互換機能を提供した事で、様々なIT業界雑誌から高い評価を受け、北米においても、徐々にシェアを伸ばしていった様です。


その後のExcelの躍進ぶりは、ご存知の通りだと思いますが、同じく、昭和58(1983年)に発売を開始した「Word」と一緒に「オフィス向けソフトウェア」の地位を確立して行く事になります。


ちなみに、「Word」の、発売当初の製品名は「Multi-Tool Word」と言う名称でした。「Microsoft Office」の歴史は、過去ブログに掲載しています。

★過去ブログ:MS-Officeの野望 〜 Microsoftの逆襲


また、今回のブログで大きく取り上げられる「マクロ」機能、正式名称は、VBA(Visual Basic for Applications)の機能は、平成6年(1994年)に発売された「Excel 5.0」に、初めて搭載されました。

----------------------------------------------------------------------------------------------

弊社への問合せで、よく「Excelでマクロを作成して欲しい」と言う問合せがあります。


しかし・・・正確に言うと、これは間違いです。


「重箱の隅を突く」ような説明かもしれませんが、マクロとVBAには、次のような違いがあります。


マクロ :決められた所定の処理手順をExcel等に記録して、その手順だけを自動的に実行する機能
VBAVBAと言うプログラム言語で、Excel等に自由にプログラムを作成し、希望する処理を行う機能


「はあ ? ・・・何が違うの ?」となるかもしれませんが、簡単に言いますと、「マクロ」は、処理手順を記録させ、実行ボタンをクリックすると、その記録した手順を繰り返すだけ機能となります。


詳しくは、次の章で「マクロとVBAの違い」を簡単に紹介しますので、そちらをご覧下さい。

----------------------------------------------------------------------------------------------

その後、この「VBA」を実装したことで、Excelの活躍の場は、さらに拡大し、単なる「表計算ソフト」だけではなくなり、企業における「業務ツール」の地位を確立する事になります。


その一方、この「VBA」の搭載、および企業へのExcelの浸透により、「マクロ・ウィルス」の脅威にさらされる事になります。


「マクロ・ウィルス」とは、下記の過去ブログにも記載していますが、平成7年(1995年)、「Word」内にVBA言語で仕組まれたウィルスが最初の「マクロ・ウィルス」になります。

★過去ブログ:マクロ・ウィルスの逆襲 〜 歴史は繰り返すのか ?


最初の「マクロ・ウィルス」は、「Concept(コンセプト)」と名付けられたウィルスで、PC内の「Word」の標準テンプレートに感染することで、PC内の全Wordファイルに被害を拡げるウィルスでした。


そして、その被害とは、Wordファイルを開くと、上記の通り、標準テンプレートにウィルスを書き込むので、その後に、Wordファイルを表示したり、作成したりすると、「Conceptウィルス」もコピーされ、自己増殖して行く事になります。


それで肝心の被害ですが・・・何もありません。単に、ウィルスがコピーされて増えて行くだけです。


また、ウィルスを発症させる弾頭(Payload)内に書かれたコメントが下記の内容であり、かつ、新しいウィルスの感染経路を示した事から、「Concept(概念)」と名付けられたと言われています。


「 REM That's enough to prove my point (意図するところは、これで果たした) 」
※REM:REMark/コメント文を意味する単語


つまり、ウィルス作成者は、「自分には、こんな素晴らしい能力があるんだ ! 」と言う事を世間に広めるためだけに、マクロ・ウィルスを作成したのだと思われています。

----------------------------------------------------------------------------------------------


似たような事例としては、「ハッカー(Hacker)」と言う言葉/定義があります。


ハッカー」とは、今では、セキュリティを破り、組織や国家の機密情報を盗み出したり、あるいは破壊したりする悪者のイメージが定着していますが、その昔、最初に「ハッカー」と言う言葉が使われた時には、次の様な意味を持っていた様です。

『 一般人より深い技術的知識を持ち、その知識を利用して技術的な課題をクリアする人 』


最初に「Hacker」と言う言葉が使われたのは、1960年代の「MIT(マサチューセッツ工科大学)」の鉄道模型クラブだったと言われており、その意図する所は、前述の通り、「何事においても、他の人より優秀な技術を持つ人」と言う事ですから、現在の様に、コンピュータ技術に特化した言葉ではありませんでした。


日常的に、機転の効く、ちょっと賢い行動をした者を「Hacker」と呼んでいた様です。


それが、何時からかは不明なようですが、恐らくは、この世にコンピュータが生まれ、世間一般に広まるにつれ、コンピュータ技術に優れた人々の事を「Hacker」と呼ぶようになったと考えられています。


さらに、当時は、コンピュータやインターネットの黎明期と言うこともあり、システムの「バグ」を見つける事に喜びや生き甲斐を感じる人が数多く存在し、このような人々がお互いに発見した「バグ」を自慢し合っていました。


ところが、やはり、その中には、犯罪に走る人が現れ、この犯罪行為を行う人間が、「ハッカー」の本当の意味を知らないマスコミ等から、「ハッカー(Hacker)」と呼ばれるようになっていったそうです。


しかし、その後、「ハッカー」本来の意味を理解する人が増え始め、犯罪行為を行う人は「クラッカー(Cracker)」と呼んで区別しようと言う活動もあったのですが・・・どうやら定着しなかった様です。


また、それと同様、システムの「バグ」や「セキュリティ・ホール」を見つけ出し、その情報をメーカーや組織に教える人を「ホワイト・ハッカー」と呼ぶようになったようですが、どちらかと言うと、この「ホワイト・ハッカー」と言う呼び方のほうが定着しているようです。


このように、1960年代〜1990年代後半の「Hacker」達は、一部の異常者を除き、自分の技術力を誇るだけで、犯罪行為を行う等、それ程の悪さはしていなかった様です。

----------------------------------------------------------------------------------------------

話は、少し逸れてしまいましたが、この「Conceptウィルス」の出現により、それまでの「ウィルスは実行形式(.exe)ファイルにのみに感染し文章ファイルには感染しない。」と言う常識が覆される事になります。


そして、この「Concept」以降、どんどん「マクロ・ウィルス」が登場し始め、現時点では、最強の「マクロ・ウィルス」と言われているのが、平成11年(1999年)3月26日に発見された「Melissa(メリッサ)」です。


この「Melissa」は、「Concept」と同様、「Word」経由で感染するのですが、その発症の仕方(Payload)が、とんでもありません。


「Word」経由でPCに侵入すると、同じくOffice製品の「Outlook」のアドレス帳を参照し、アドレス帳に登録されているメール・アドレスの先頭50件に、下記の文面と共に、ウィルスを仕込んだ「Word」ファイルを添付したメールを送信します。


『 Here is that document you asked for…don’t show anyone else ;-(この前から頼まれていたものです。他の人には見せないでくださいね。) 』
※「;-」はウィンクの顔文字


そして、メール受信者が、この添付ファイルを開くと、当然、「Melissa」に感染してしまい、また、「Outlook」のアドレス帳の最初の50名に、ウィルスに感染したメールを送信する事になります。


このため、1次感染から3次感染までの間だけで、2,500台ものPCが感染してしまうという脅威の拡散スピードになっており、実際、全世界で233の機関を攻撃し、81,250台ものPCに感染したと言われています。


さらに、この「Melissa」が怖いのは、「メール送信者が全て知人である。」と言う事です。


普通、知らない人からのメールは、疑わしいので開封しませんし、まして添付ファイルなど開きませんが、これが知人となれば話は別ですし、さらに、メール受信者が男性で、送信者が女性だったら・・・後は、お察しの通りです。


私を含め、世の中の男性はバカが多いと思いますので、知人女性から、前述のような文面のメールが送信されてきたら、いとも簡単に添付ファイルを開いてしまうと思います・・・情けない。


しかし、幸いな事に、「Melissa」の日本語版はありませんでしたので、攻撃されたのは、主に北米と欧州だけに限られます。


「Melissa」に関する詳細は、前述の過去ブログ「マクロ・ウィルスの逆襲 〜 歴史は繰り返すのか ?」に掲載しています。

----------------------------------------------------------------------------------------------


また、何故、このように、いとも簡単に「マクロ・ウィルス」に感染するのかと言えば、Microsoft社の対応のマズさも一因とされています。


現在では、対応が取られていますが、Excel、およびWord等、当初のOffice系ソフトウェアでは、VBA機能に関して、「デフォルト(初期値)=有効」となっていました。


このため、ウィルスが仕込まれたOfficeファイルを開くと、何も対応を取る事ができず、直ちにウィルスに感染してしまいました。


現在では、VBA機能が含まれているOfficeファイルを開くと、「コンテンツの有効化」を問い合わせるメッセージが出力されますので、「マクロ・ウィルス」が仕込まれていても、直ぐには感染する恐れはなくなりました。


このように、Excel/Wordが、Office系ソフトウェアの「デファクト・スタンダード」になるにつれ、「マクロ・ウィルス」も増えて行くことになりますが、これは仕方が無い事だと思われます。


Windows OS」や「Internet Explorer」等、何事も「デファクト・スタンダード」になると、攻撃者に狙われやすくなってしまいます。


「出る杭(くい)は打たれる」とは、よく言ったものですが、英語圏に同じなような「諺(ことわざ)」が無いのが残念です。

■マクロとVBAの違い

さて、次に「マクロ」と「VBA」の違いを簡単に説明したいと思います。


例えば、営業会議の資料を作成する業務で、下記A〜Eのような作業を、毎月行わなければならないケースがあるとします。

【 営業会議資料作成手順 】
A:1枚目のシートに、前月分、1ヶ月間の売り上げ情報を貼り付ける
B:2枚目以降のシートには、「VLOOKUP関数」が埋め込まれているので商品毎に売り上げが分類される
C:商品毎に分類した売り上げに対して、商品を売り上げ金額順に並び替える
D:別シートに貼り付けた去年の売り上げデータを参照して各商品の前年同期比を算出する
E:さらに全商品の売り上げ状況をグラフ表示する


売上データをコピー/ペーストして、Excel関数を使い、最終的に表やグラフを作成する、と言う単純作業ではありますが、データが大量にあると、面倒な作業になってしまいます。


このような場合、上記作業の内、C〜Eを「マクロ」に登録すれば、AとBを除く、C〜Eの3段階ある作業を、2段階まで短縮出来ます。


つまり、「作業A」でデータを貼り付け、後は、「マクロ実行ボタン」を押せば、「マクロ」として記録した次の作業を自動で行うことが可能になります。


C:商品毎の並び替え
D:前年同月比の算出
E:グラフ作成


これら3個の作業を、「マクロ」が自動的に行ってくれるので、面倒な作業が直ぐに終わるので、業務効率化には「持って来い」の手段です。

----------------------------------------------------------------------------------------------

しかし、「マクロ」は、前述の通り、作業手順を記録させて、その記録した作業を繰り返すだけの機能になります。


このため、例えば、上記の例題の場合、「商品の並び替え」において、商品数が増えると、並び替え範囲を再調整しなければなりません。


また、過去の売り上げデータの保管場所が変わったり、あるいは過去売り上げデータのセルの場所が、前回と異なったりしてしまうと、こちらも再調整が必要になります。


このように、「マクロ」は、手順を記録するだけなので、余り自由が効きません。


これに対して「VBA言語」によるプログラミングでは、こちらも「万能」とは行きませんが、自由度の範囲は、格段に拡がります。


商品範囲を指定する場合でも、「空白があるまで」を商品範囲にすれば、商品数の増減にも、自由に対応が取れます。


また、過去ファイルを参照する場合も、プログラミングで「ファイル参照機能」を実装すれば、作業の都度、自由に指定出来ます。


このように、「VBAプログラミング」技術があれば、Excelを用いた様々な作業を自動化する事が可能になります。

----------------------------------------------------------------------------------------------


しかし・・・もう少し詳しい内容を説明しますと、前述の通り、「マクロは、処理手順を記録しただけに過ぎない。」のですが、その中身を見てみると「VBA言語」で記述されています。


ますます「はあ ?」となってしまうかもしれますが、実際の中身を見てみると、「マクロ」と「VBA」は、同一の物と言う事になってしまいます。


つまり、より正確に説明すると、「マクロとは、一定の処理手順を、VBA言語で記録した物。」と言う事になります。

----------------------------------------------------------------------------------------------

それと、Excelに限った話であれば、Excelには、「関数」と言う、これも非常に便利な機能があります。


この「関数」と「マクロ」や「VBA」は、何が違うのでしょうか ?


「マクロ」と「VBA」は、根本的には同じ物となってしまいますが、「関数」と「マクロ/VBA」とは、根本的に違う物となります。

元々Excelは、「表計算ソフトウェア」として開発/発売されてきたソフトウェアですので、「関数」は、表計算を自動で行なってくれる計算式の事になります。


それでは、「表計算の計算式」とは、どういう物なのかと言うと・・・例えば、5個の項目の平均値を出すと言う計算の場合、普通に考えれば、項目1〜項目5までの、5個の値を順番に加算し、さらに合計値を5で除算する計算を行わなければなりません。→ =(A1+A2+A3+A4+A5)/5


しかし、Excelの場合、あらかじめ「AVERAGE関数」と言う関数が用意されていますので、「=AVERAGE(A1:A5)」と指定するだけで、簡単に平均値を導き出す事が可能となります。


このようにExcelの場合、「マクロ」、「VBAプログラム」、そして「関数」と言う便利な機能が、あらかじめ用意されており、この事が、Excelを、単なる「表計算ソフトウェア」の位置から、「業務管理ツール」の地位にまで高める事になったのです。

----------------------------------------------------------------------------------------------

ちなみに、「VBA」と言うプログラミング言語ですが、こちらは、元々、Microsoft社が、1990年代に開発した「VB(Visual Basic)」と言うプログラミング言語を、Office用に改造して、次のOffice製品に搭載した物となります。

→ Word、ExcelOutlookAccessPowerPoint


そして「VB」と言うプログラミング言語ですが、2005年3月31日にメインストリートのサポートが、2008年4月8日には延長サポートも停止され、現在では、「VB.NET」と言うプログラミング言語が、後継言語となっています。
VB.NET:日本語で読む場合「ブイビー・ドット・ネット」と呼ばれています。


この「VB」と言うプログラミング言語には、さらに、その前身となる「Microsoft Basic」と言う、当時のマイクロコンピューター「Altair(アルテア) BASIC」用のプログラミング言語がありました。


そして、この「Microsoft Basic」を開発したのが、現在は、既に第一線からは退きましたが、Microsoft社の元会長「ビル・ゲイツ(William Henry "Bill" Gates III)」氏と、共同創業者「ポール・アレン(Paul Gardner Allen)」氏です。

----------------------------------------------------------------------------------------------


ビル・ゲイツ」氏に関しては、日本においても、余りにも有名なので、今更、説明は不要だと思いますが、「ポール・アレン」氏も、アメリカでは超有名人です。


ポール・アレン」氏も、現在は、ビジネスの第一線は退いておりますが、各種慈善事業、スポーツ関連事業等、様々な活動を行っているようですが、特に、兵器収集や探索への思い入れが強い様です。


彼の兵器コレクション、中でも第二次世界大戦時の兵器コレクションは凄く、アメリカ軍「P-51/ムスタング」、ドイツ軍「BF109/メッサーシュミット」、旧日本陸軍「一式戦闘機/隼」等、実際に飛行可能な状態で保存している様です。


さらに、ソ連「Mig-29/ファルクラム」、シャーマン戦車、小型宇宙船「スペースシップ・ワン」・・・等、もう、とんでもない兵器も所有しているそうです。


さらに、これは日本のニュースでも、大々的に放送されましたが、2015年3月3日に、フィリピン/レイテ島沖で、旧日本海軍の戦艦「武蔵」を発見しています。


また、つい最近、このブログの執筆をしている最中となる2017年8月18日、これも、NHKを始め、様々なニュース媒体で放送されましたが、フィリピン沖合の海底で、旧日本海軍伊号潜水艦の攻撃を受け、第二次世界大戦におけるアメリカ軍で、最後に撃沈された重巡洋艦インディアナポリス」も発見しています。


もう、お金持ちは、凄い事ばかりしてくれるようです・・・

----------------------------------------------------------------------------------------------

プログラミング言語の紹介から、話が逸れてしまいましたが、Office製品には、「Microsoft BASIC」、「Visual Basic」、そして「Visual Basic for Applications」と言う歴史を持つ、プログラミング言語が搭載されており、このプログラミング言語の搭載により、Excelが、強力な「業務ツール」となっています。


VB」に関しては、噂ですが、「ビル・ゲイツ」氏の思い入れが非常に強いプログラミング言語なので、彼が生きている間は、絶対に、この「VB系統」のプログラミング言語が、この世から消える事は無いと伝わっています。


ゲイツ氏は、今年で、まだ61歳ですので、今後も、あと20年くらいは、安心して「VBA」や「VB.NET」も使えると思います。



Excelの功罪


元々Excelは、これまで説明してきた通り、「表計算ソフトウェア」として誕生したのですが、Microsoft社が意識したのか否かは解りませんが、「表」自体が、見積書、注文書/請書、請求書、等、様々なビジネスシーンで使用する、各種帳票にマッチしてしまいました。


さらに、これら各種帳票とビジネス・フローとの関係を見ると、その流れも、ほぼ完全に一致しています。


(1)お客様とのビジネスの始まりとして「見積書」を作成する。
(2)予算と見積金額が合致すれば「注文書/注文請書」を作成する。
(3)請け負った作業終了すれば「納品書」を作成する。
(4)検収作業が終了すれば「請求書」を作成する。


つまり、ビジネス帳票として、Excelにより、「見積書」、「注文書/注文請書」、「納品書」、そして「請求書」を、それぞれ各シートに作成してしまえば、顧客毎の受発注業務は、1個のExcelファイルで完結させる事が可能となります。


さらに、ここで「VBAプログラミング」の登場ですが、上記「見積書」から「請求書」までの書式(フォーマット)を統一し、かつ下記の項目さえ、都度、自由に変更出来るシステムを作成すれば、「見積書」に、下記の顧客情報を入力するだけで、「注文書/注文請書」、「納品書」、そして「請求書」まで、自動的に作成する事も可能になります。


・顧客名
・顧客住所
・顧客担当者名/役職名
・金額
・納期
・成果物一覧


これまで、作業の都度、「見積書」から「請求書」まで、顧客毎に、4種類もの帳票を作成しなければならないので、手間も掛かりますし、入力ミスも発生していましたが、上記のような「契約帳票自動作成システム」を作成してしまえば、「見積書」に必要情報だけを入力すれば、後の3種類の帳票は、自動で、かつミス無く作成する事が出来ます。


このような仕組みを構築するだけで、次の業務効率化が可能となります。


・作業時間短縮
・帳票の品質向上
・原稿さえあれば、誰でも契約書類を作成する事が出来る
・社内帳票のフォーマット統一
・残業時間短縮

----------------------------------------------------------------------------------------------

また、大企業においては良くある話ですが・・・大手企業は、当然、会社規模が大きいので、社内の様々な情報を、各種「大規模システム」で管理しています。


営業情報、社員情報、会計情報、商品情報・・・全て、企業を継続して行くために必要不可欠な情報です。


そして、社内においては、これも当然の事ですが、様々な部署で、必要に応じて、これらの情報を使用しています。


しかし、情報(データ)を管理するシステムの規模が大きいので、データが複数のサーバーやフォルダーに分散され、各部署/部門で必要となるデータを簡単に入手するのが、非常に困難な状況になっています。


例えば、商品毎の売り上げ数字と在庫状況を知りたいと思っても、必要なデータは、次のように分散してしまっているケースが見受けられます。


・売上数字 :年度/月別の営業データ
・商品情報 :年度/月別の商品売上データ
・在庫情報 :年度/月別の在庫データ


このため、上記の通り、商品毎の売り上げ数字と在庫状況を知りたいケースでも、様々なサーバー内にあるデータやデータベースを参照し、都度、必要な情報を取り込む必要があります。


そうなると、部署/部門毎に、それぞれ個別のシステムを作成して必要情報を取得しなければなりませんが、これもExcelで対応可能です。


まあ、データベースやERPを参照する場合、少し複雑な処理も必要になりますが、たいていの場合、Excel用インターフェースを備えていますので、「VBA言語」さえ知っていれば、かなり自由にデータを参照/取得することが可能になります。


一旦Excel内にデータを取り込むことさえ出来れば、後は、関数やプログラミングを駆使して、部署独自に管理帳票を作成する事が出来るようになります。


このように、「Excel/VBA」を駆使すれば、社内、あるいは部門内に、独自のシステムを作成し、複雑な業務を、「実行ボタン一発」で終了させる事が出来るようになります。


そして、このようなシステムを作成する社員を、各種IT系のメディアでは「Excel職人」と呼んでいるようです。

----------------------------------------------------------------------------------------------


確かに、この「Excel職人」が、社内や部門に、一人でもいれば、複雑な業務も、直ぐに終わらせる事が出来るので、該当部門では「人間国宝」のように取り扱われているようです。


しかし、このような「Excel職人」とは、どうして誕生するようになってしまったのでしょうか ?


基本的には、仕事に対して前向きな姿勢を持つ社員が、自発的に、日々の業務の効率化を図る事を目的に、独自に、Excelのスキルを向上させた結果、このような「Excel職人」が誕生したのだと思われます。


多くの企業では、会社の業務としてExcelやWord等、Officeツールを使わせはしますが、Excelのスキル向上のため、通常の業務以外に、別途時間や費用を掛けて、Officeツールのスキルを向上させる、勉強会等の取り組みなどは行っていません。


皆、個人ベース、OJT等を通して、ExcelやWordのスキル向上を図っています。


このため、前述のように、ある程度、ITスキルがある社員が、自発的に、「関数」や「VBAプログラミング」を学習し、自分の業務に対する効率化を図る事になります。


そうして、身に付けたExcelのスキルが、業務に役立つ事が解ると、その社員は、さらにスキルを身に付けようとします。


また、その社員の回りの人達も、Excel関係で、何か問題があれば、その社員を頼るようになります。


こうして、その社員は、「Excel職人」として、さらに進化して行く状況になってしまいます。


このように、会社として、社員全員に対して、ある程度均一なスキルを身に着けさせるための活動を行わない事が原因で、一部の社員が、「Excel職人」として成長してしまう状況を生み出しているのだと思われます。


----------------------------------------------------------------------------------------------


こうして、メデタく、社内、あるいは各部署に「Excel職人」が誕生してしまうと、これまで、かなり時間を掛けて行っていたExcel関係の作業が、簡単に終わるようになります。


こうして、次から次へと、Excel関係の業務が簡単に終わるようになって行きますので、データを集計して計算する業務に関しては、何でもかんでも「Excel」で行うようになって行きます。


別に、Excelで行う事が出来る業務が、簡単に終わるようになるのであれば、何も問題が無いのでは ? と思う人が大半だと思います。私も、そう思います。


ところが、IT系メディアに投稿するライターの方達は、「何でもかんでもExcelで行うのが問題だ !」と言う指摘をしています。


さらに、「Excel職人の存在が、企業へのBIツールの導入を妨げている !!」と声高に叫んでいます。


しかし・・・これは、別に、「Excel職人」が悪いわけではないと思います。


確かに、これは「Excel職人」に限った話ではありませんが、現状を変えようとすると、頑なに抵抗する、俗に言う「抵抗勢力」的な人は、どの世界にも必ず存在します。


この「抵抗勢力」は、状況が変わる事で、自分達に、次のような悪影響があると考える人達です。


・状況が変わると、今までの経歴/キャリア/スキルが無駄になってしまう
・状況が変わると、自分達の「居場所」が無くなってしまう
・状況が変わると、これまで覚えてきた作業手順が変わってしまう
・状況が変わると、また新たな作業手順を覚えなければならない


Excel職人」がいる部署/部門に、新しいツールを導入しようとすると、確かに、「Excel職人」の居場所は無くなる可能性がありますし、これまでExcelで、簡単に行ってきた作業が変わるので、部署/部門全体が「抵抗勢力」になる可能性も高いと思います。


しかし、このような「抵抗勢力」となる部署/部門は、別に「Excel職人」がいる部署/部門に限った話ではありません。


どの部署/部門だろうと、とにかく現状の運用や作業を変更される部署/部門は、全てが「抵抗勢力」となり得ます。


ITライターが、「Excel職人」に対してのみ「抵抗勢力だ!」と言っているのは、単に、このライターが、「BIツール」の売り込みを行っているからだけだと思われます。


その昔、過去ブログで、「Microsoft御用達ライター」が居ると指摘しましたが、こちらは「BIツールの御用達ライター」なのだと思います。


私が、「Excel職人」の弊害として取り上げたいのは、上記のような「新規ツール導入時の抵抗勢力」の問題ではありません。

----------------------------------------------------------------------------------------------

新規ツール/システム導入時の抵抗勢力への対応方法は、別のブログで紹介したいと思いますが、今回、私が「Excel職人」の問題として取り上げたいのは、「Excel職人の喪失問題」です。


ある部署/部門で、メダたく「Excel職人」が誕生します。


そうなると、該当部署/部門では、これまで面倒だったExcel関係の作業が、画期的に効率化されます。


これで、該当部署/部門では、「バンザイ !」となるのですが、問題は、「Excel職人の喪失」です。


企業には、必ず移動や退職があります。


例えば、「Excel職人」が転籍、転勤、あるいは転属で、該当部署から消えてしまったとします。そうなると、これまで作成してきた「Excel/VBAシステム」は、一転「負の遺産」化してしまいます。


何故かと言えば、「Excel/VBAシステム」に、何か問題が起きても、誰も問題を解決出来ません。情報システム部に依頼しても、「そんな勝手に作ったシステムなんか知らないよ !」と相手にもされません。


仕方がなく、作った本人、「Excel職人」に問題調査を依頼しても、既に、他部署に移ってしまっているので、中々調査もしてもらえません。


このような状況になると、かつては輝かしいツールも、「負の遺産」と化してしまいます。


これが、「Excel職人」の退職の場合は、さらに悲惨な運命を辿ります。


Excel職人」が作成した「Excel/VBAシステム」は、「Excel職人」が独自に作成しているので、仕様書も設計書等、何もドキュメントがありません。仕様書/設計書は、「Excel職人」の頭の中にのみ存在します。


このような状況では、誰にも修正は頼めません。かくして、かつては部門における「便利ツール」だったExcelも、単なるお荷物と化し、闇に消えていく事になります。

また、Excelは、そのバージョン毎に非互換がありますので、例えばExcel2007の時代に作成した「Excel/VBAシステム」は、Excel2010やExcel2013では動かなくなる可能性が非常に高くなります。


このような時に、企業が取る手段は、Excel2007で作成した「Excel/VBAシステム」を稼働させるためだけに、古い環境、例えば「Windows XP & Excel2007」環境のPCを1セットだけ残し、インターネットには接続せずに残す手段を取っています。


私が、過去に相談を受けた企業には、このような古い環境で、「Excel/VBAシステム」を使い続けている企業が何社もありました。


もう、こうなると、どうしようもありません。該当PCが壊れるまで、おそらく古い「Excel/VBAシステム」を使い続ける事になると思います。


しかし、該当PCが壊れたら、どうするのでしょうか ? ・・・おそらくは、インターネットで「Windows XP」を販売しているサイトを探し出し、また「XP」を購入して、使い続けるのだと思います。


驚く事に、「Windows XP 新品」と言うキャッチコピーで、未だに「XP」を販売しているサイトが、ゴマンとあります。


きっと、上記のような状況の会社が、沢山存在している証拠なのだと思います。


このように、「Excel職人」が、部署/部門から消えてしまう事が、「Excel/VBAシステム」にとっては、最大のリスクなのだと思います。

今回は、「取り敢えずExcelで良いのか ?」と題して、「業務のExcel化」に関して、次のような点を紹介しました。


Excelの歴史
●マクロをVBAの違い
Excelの功罪


特に、今回のブログで取り上げた「Excelの功罪」の章では、「Excel職人」に関する問題を取り上げました。


Excel/VBAで作成した様々なシステムに関しては、どのバージョンのOSやOfficeでも動作できれば、恐らくは、機能追加や仕様変更さえ行わなければ、この先ずっ〜と、使い続ける事が出来るのだと思います。


しかし・・・いつもの如く、Microsoft社が、自社の都合だけで、Officeの仕様を勝手に変更してしまうので、バージョン毎の非互換が生まれてしまいます。


そうなると、「Excel職人」が作成したシステムは、残念ながら、「負の遺産」となってしまいます。


Excel/VBAは、他のプログラミング言語と比較すれば、覚えやすい開発言語なので、少し勉強すれば、「Excel職人」になることは可能だと思います。


しかし、「Excel職人」が居なくなってしまうと、その後は大変です。


Excel/VBAで作成したシステムを使い始めた時には、誰も、「Excel職人」が社内や部門から居なくなる事など想像していません。


しかし、その事が、「Excel職人」の一番大きな問題です。


次回は、この問題を継続して、次のような内容を紹介したいと思います。


Excel不要論
Excelの問題
●今後のExcel


それでは次回も宜しくお願いします。

以上

【画像・情報提供先】
Wikipedia(http://ja.wikipedia.org/)
・本ブログ中の会社名、システム名、製品名は各社の商標および登録商標です

【株式会社 エム・システム】
本      社  :〒124-0023 東京都葛飾東新小岩8-5-5 5F
           TEL : 03-5671-2360 / FAX : 03-5671-2361
盛岡事業所  :〒020-0022 岩手県盛岡市大通3-2-8 3F
           TEL : 019-656-1530 / FAX : 019-656-1531
E-mail    : info@msystm.co.jp 
URL     : http://msystm.co.jp/
        : http://msystm.co.jp/excel_top.html
ブログ       : http://d.hatena.ne.jp/msystem/ 
Facebook   : http://www.facebook.com/msysteminc