080101_Excelで本当にできること注:まだ書きかけですが、エンドユーザーの立場から、ソフトウェア業界の方には考えてほしいことなので途中まででも公開しています。お子様たちにもとても重要です。小中学校でプログラミングを習わせるなら、ゲームプログラミングは単なるきっかけとしてお教えするだけにしておいて、本当なら、Excelの真の基礎やデータベース、データの扱い方の授業を新たに1本、作ったほうが社会全体のため、社会全体のコストダウンにつながると思います。ゲームプログラミングはクリエイター志望の方にとってはとても重要で、また、実際に「ものすごい人が育つ」と思いますが、でもそれは一部の人だけにしか有効ではないし、社会全体の底上げにはなりませんので・・・。いう分野の天才を育てることももちろん必要ですが、全体も見て欲しいです。データベースの天才も育てる努力が必要だと思います。「社会全体までもを底上げできる可能性があるプログラミング」は、まずは「データベース」と「データベースに関わるプログラミングやSQL」だと思います。SQLやデータベースプログラミングを覚えておけば、いろんな言語にも応用が利くと思います。僕自身は大して分かってないので偉そうにすみませんが・・・。「プログラミング=ゲームプログラミング」という安直な考えで、ゲーム関連ばっかりをお子様や学生さんにやらせてしまっても、現実問題、結局は社会の役に立ちにくいと思います。プロの方々が、私たちド素人にかわってそういったお子様たちの育成のことを考えてほしいと思います。有料でかまいませんから、もっと子供さん(小中高)や学生さんたちに色々と教えてあげてほしいと願います。さん、にとっては、ExcelVBAプログラミングよりもはるかに重要な機能です。VBAプログラムがなくてもこういうことがいつでも分かる・できるようになるからです。8割以上?と聞き及びますので、そこにこの2つの機能が広まっていないというのは、「日本のデータ管理教育やExcel教育は完全に失敗している」ということを意味していると思います。それが、「データ管理のムリ・ムダ・ムラ」がExcel2000の時代、もしくはExcel97よりも前の時代からほぼ減っていない(逆に増えているかもしれない)原因にもなってしまっている気がします。僕はそうなってしまった理由を以降に挙げたように考えています。エンドユーザー目線で、重要度順に、次の5つがあると考えています。(偉そうで本当に申し訳ないのですが、生意気にも批判もありますが、全部が全部そういう意図ではなくて、「たまたま不幸な偶然が重なってしまっただけ・・・」という意味も半分ありますので、そういう観点でお読みください。なんでもっと教えてくれなかったの?って思います・・・」という気持ちがあることも知って頂きたいと思います。)(01)たまたまマイクロソフトさんがExcelの作り方と広告の仕方を間違えたから。Query」を推進してこなかったから。(02)たまたまか勘違い・思い込みで、Excelのレジェンドさんやプロの方々が、Excelの「データ管理の基礎」ではなく「ExcelVBAプログラミング」を推進してきてしまったから。Query」を「最重要項目、VBAよりも重要な機能」と認識してないから。「ちょっとした便利な機能」くらいの認識しかしていないから。教え方の掘り下げをまったくと言っていいほど、行っていません。(04)特にピボットテーブルの場合は、上記3つの理由から、表のレイアウトがしにくい・自由にならない、と誤解されているから。グループ化や数式追加機能、GetPivotTable関数などでもレイアウトが比較的自由になることを広めてこなかったから。同時に、集計の方法が難しい、データの検索等がしづらい、などの誤解も受けていると思います。(05)上記4つの理由から、ただの反復練習不足の状況になってしまいました。いう機会がエンドユーザーさんたちに与えられていません。マイクロソフトさんも、Excelのプロの方々も、レジェンドさんも、パソコン教室さんも、誰もそういう機会を与えずにきてしまいましたし、今も変わらずにそのままです。Query」は、たしかに最初はとっつきにくいかもしれませんが、でも理屈はどうあれ、反復練習すれば「感覚」で「想像や創造」でたいていの人は使えるようになります。・・・少なくとも17年、同じ練習問題を「こういう嬉しい結果になる」という結果を見ながら何度もやれば、誰もが、「なぜそうなるか」の細かい理由は知らなくても、操作自体はできるようになります。同じ練習問題以外にもほかの練習問題をやればそうなれると考えています。英語のレッスンで「ただ聞くだけ」というやり方と似ていると思いますが、そういうお教えの仕方をしてもよいのではないか?といつも思います。Query」がエンドユーザーさんたちに広まらずに、日本中に「データ管理のムリ・ムダ・ムラ」を今も拡大し続けている理由・・・、その一番大きな原因は、以上の5つです。のちほど、【少し詳しいお話】のところで、もう少し詳しくお話させていただきます。「先にデータ管理の基礎を教えないでVBAプログラムだけをお教えする」というのは、ネタが尽きることは無いので、VBAプログラムを教える人は限りなくオファーが入り儲かってしまうことになります。本来はお医者様と同じような感じで、データ管理の基礎を知る人が増えれば増えるほど、迷えるユーザーさん(いわば患者さん)が減り、お教えする側は本来は貧乏になっていかないといけないと思います。高度なことをお教えする状態にシフトしていて、今では、VBA=グラフを中心にピボット・MSQuery・テーブル機能・リレーションを動かして自動化効率化=17年前の100倍の効率で全中小零細企業がデータ管理を行えている、となってないといけないはずです。それプラス、業種別の「分析」や「仮説と検証」の手法・風土化のレッスンやケーススタディ。全中小零細企業の現場では、Excelでのデータ管理については、17年前とほとんど何も変わっていないと思います。「どうせPDCAサイクル回さないんだから、こんな資料作る必要ある?そもそもExcelで売上が上がる?聞いたことない。売上が上がらないソフトに時間とお金つぎ込む意味ある?記録だけ残したいならデータベースにいくらでもあるから、上司が直接そっから勝手に引き出せばいいじゃん。「会議のためだけの資料作りなんて意味ある?はやく帰らせてよ。「コンピュータやExcel使うより、勘と感と思いやりと行動で突き進んだほうが早くね?」という思いで、資料や日報などを何度も作らされた人もいらっしゃるのではないでしょうか?私自身がそうです。PDCAサイクル?回したことなんてないです。資料を作るにはExcelが必要です。真の意味で役に立ってるか、わかりません。これはエンドユーザーさんには罪はないですよね。なったのはエンドユーザーさんのせいではありません。今の現状からしますと、「もしかしたら、日本には、もとからパソコンなど必要なく、Excelなんて最初から必要なく、メール専用機、FAX専用機、LINE、だけあればいいのかもしれません。」と言えなくもない気もします。Query」、ひいては「データ管理の基礎」が、Excelのプロの方々や「お教えするプロ」の方々をもってしても子供たちやお若い方々に広まらないのでしたら、そういうことなのかな、と思います。僕はこんな偉そうなことを言える立場でも技量でもないのですが、でも、Excelやパソコンのことをお教えすることもあるので感じるのですが、次の世代の人たちが今と変わらない「データ管理のムリ・ムダ・ムラ」をかかえて進んでいくのはやっぱり良くないことだと思っています。お金と幸せの関係についても教えてあげられない人生についても教えてあげられない運などについても教えてあげられない夢についても教えてあげられない何も教えてあげられないうえに、Excelやデータ管理の基礎についても20年前のまま。何も変わっていない効率の悪さ。こんなことでいいのかと自分自身、思います。問題提起、話し合いのネタ、になるといいなと思います。Query」ですべてが解決できるとは考えていません。いいますか、僕自身は「数値分析」なるものにも懐疑的です。数値分析に必要なのは、「物理的時間」と、現場末端の検証作業の合意、時間コストと金額コストと「覚悟」と「仮説と検証のような行動の風土化」、などだと思います。そこまで覚悟を決めてやってる企業さんがどれくらいあるでしょうか?どれが欠けても「数値分析」は社内での継続はできません。Query」は特に零細企業では全従業員さまが理解しておくべき重要な機能だと思います。Query」は重要で、ExcelVBAよりもはるかに大切です。****************************【少し詳しいお話】(01)たまたまマイクロソフトさんがExcelの作り方と広告の仕方を間違えたから。Query」を推進してこなかったから。それが原因で、「ExcelVBAよりも重要な最重要機能の一つ」として書籍やWeb情報に頻度良く登場してこれなかったのだと思います。Query」という素晴らしいツールを開発しているのに、それを自覚されておらず、それの使い方を推進してこなかったからというのが一番大きいと思います。Query」の理論の延長上にあるため、書籍やWeb上で紹介される頻度がVBAプログラミングよりもどうしても大幅に減ってしまったのだと思います。ピボットテーブルは、Excel2000が誕生してからが、とても生き生きとしてきています。Query」を「初心者には難しいツール」と決めつけて広く紹介してこなかったからだと思います。Query」の基礎になっているのは、「複式簿記と同じくらいの有名レベルの」「データ管理の事実上の世界標準」である、「SQL」です。「複式簿記と同じくらいの有名レベル」というとなんとなく難しそうで身構えてしまうかもしれませんが、あくまでも「有名さの度合い」の話なのであまり心配は要りません。半面、高度なことはメチャメチャ奥が深くて死ぬほど難しい面もありますが・・・。要はそればかりじゃない・私たちド素人でもやれることがある、ということを是非知って欲しいのです。Query」は(Accessクエリも同じですが)、「SQL」を知らなくてもある程度のことは処理できてしまいます。易しいもの、に仕上がっています。「SQL」を知らなくても、ある程度複雑な条件でのデータ抽出や集計は「ドラッグとクリックと簡単な条件値入力だけで」できてしまうのです。出てくる数字やピックアップリストと、そのソースとなるモト表との関係を何回も何回も眺めていれば、それだけで、そこそこ「感覚で」なんとかなってしまうのです。深い理屈を知らなくても。「深い理屈を学ばないことは罪」という人がいるかもしれませんが、僕は「お仕事での利用」や「ビジネスパーソン」に対してはそうは思いません。出せる」なら、「深い理屈をじっくり学ぶのは後でいい」ですし、「まずは知りたい数字をだしちゃえ!!」ということでまったくもって「良い」と思います。私たち「エンドユーザー」は「技術者」になるのではないし、「結果がほしいだけ」なのですから。そもそも、「エンドユーザー・コンピューティング」とは、「VBAプログラムができること」ではなくて、もっと広義であり、「コンピュータを使ってラクに・簡単に・私たちド素人でも・早く結果を出す・知る」=「専門家に頼まなくてもド素人自身がコンピュータで知りたいことを知る・解決する・何かの結果を得る」ということだと思うのです。VBAプログラムや高度なSQL(ついでにAccessデータベースなど)について深く学ぶことは、集計システムを内製化したり、さらに高度なデータを得るのには必要です。エンドユーザー・コンピューティングにはなくてはならないものですが、でも「VBAプログラムありき」だとやっぱり物事がおかしくなると思います。ピボットテーブルの威力」を体験して、ある程度使ってからなら、それでできないことをVBAプログラムで補えばいいだけなので、結果、VBAプログラムや高度なSQLを教えてもらうコスト(授業料)だって10分の1以下になる・もしくは・同じお金を払うならその範囲内で10倍高度なことが習える・・・、わけですから・・・。VBAプログラミングを勉強すれば必ずコストがかからないかといえばそうでもないですし、そもそも理解できるようになるまでどれだけ時間とお金がかかるかも考えないといけません。覚えるのだってタダじゃありません。時は金なり、ということなら、独学であっても「時間を奪われる」だけで自分の時給換算分、コスト的に損をしていることになります。全部会社がお支払いしてくれるならいいのですが、そんな話は聞いたことがないので、基本的に全額自己負担です。ただでさえ皆さん時間が無いのに、結果よりも先に学ぶことに時間を割かなくてもいいと思います。深いことを学ばなくても、まずは自分の知りたい数字やリストがある程度の正確性で出れば自分のお仕事に支障はないし、むしろそのほうが先決ですし、そしてより高度なことがしたくなったら、初めてそこで自然に「深く学ぼう!学びたい!」という欲求が生じてくるだけなので、その時点以降で深く学べば、ビジネスパーソンの場合はそれでまったく問題ないと思います。技術者になったり、社内SEとして身を立てるんだ、ということなら「深く学ぶこと」、例えばそのなかの一つである「基礎」をないがしろにしては絶対にいけないと思いますが、「ただ数字を知りたいだけ」という末端の「ビジネスパーソン」の場合は、「基礎より先に、まず結果、であり、基礎はより深い結果を知りたくなってからでも遅くない」と思います。「難しいことは置いておいて、表をこう作って、こうドラッグで紐付ければ、こんな数字はVBAプログラムを使うまでもなく簡単に出せちゃいます。「ベン図を思いうかべて、"なんとなく"とか"だいたい"とか"テキトー"で全く問題ないので、こうドラッグするとこうなる、っていう覚え方でいいんです。「なぜそうするの?とか理屈とかはもう考えないでいいから、こういうデータを探したいとき・こういう条件を指定したいときはこういう風に表を作ってこうドラッグしてこう入力して」ということを延々と、業種別・職種別の簡単な反復練習問題集をつくり・増やしながら、17年以上推進してこれば、無駄なExcelVBAプログラミングが大量発生することも、それに付随した無駄なメンテや引継ぎの失敗が発生することも今の半分以下くらいにはなったのではないかと思います。Query」の存在を知らないがために、いちいちVBAプログラミング(やVlookup関数)を使って出している、という愚をおかさなくて済んだのではないかと思います。「BIシステム」が「宝のもちぐされ」になったりとか、「"まず失敗する"という言葉の代名詞」とならずに済んだのではないかと思います。Query」の操作レベルのツール、特にピボットテーブルレベルのツールが現場の末端で扱えないのに、仮説と検証が風土化されるはずもありませんで、そうなれば当然、「BIシステム」が現場の末端で使われるわけがありません。(「仮説と検証が風土化」には、ピボットすら要らない、ということもあるとは思いますが・・・。)話が逸れてしまってすみませんでしたが、以上のようなことを、マイクロソフトさん自身が「お客様の目線で・立場で」という視点で考えてきませんでした。(バージョン2016になって、やっとこさリレーションシップ機能が載ったということもその証明になってしまっています。ピボットテーブルも」広まってこなかったのだと思います。それはわざとではないと思います。何も考えていなかっただけだと思いますが、それがたまたま一番大きな原因になってしまったのだと思います。このマイクロソフトさんの無自覚が、私たちエンドユーザーにとっては、運悪く「諸悪の根源」になってしまったのだと思います。(02)たまたまか勘違い・思い込みで、Excelのレジェンドさんやプロの方々が、Excelの「データ管理の基礎」ではなく「ExcelVBAプログラミング」を推進してきてしまったから。マイクロソフトさんがそんなだから、Excel=「VBAプログラムを操れる人が一番偉い」という間違った風潮がExcelのレジェンドさんやプロの方々のあいだでも染みついてしまった・・・。