匠達のセル道TOPへ  


第5回  ケイン編  インタビュー実施日:2002/9/30


1 初めてエクセルに触れた時期は?

 7年ぐらい前(だったかな ?)、ちょうどEXCEL95が発売される直前に、売れ残り処分品みたいな(笑)感じで、PCショップの棚の片隅にあったEXCEL5.0を買ったのが最初です。

2 初めてVBAコードを書いた時期は?

 EXCEL5.0を使い始めてから、数ヶ月後のことです。

3 VBAコードを書く時間を無理やり1日平均にすると?

 うーん・・TOMOさんと同じで全く書かない日もありますが、エクセルファンクラブ・エクセルQ&Aサロンへの回答に書く時間は、トータルすると20〜30分といったところでしょうか。自分の仕事に使うプログラムはたいがい大きいものですし、書き始めると一気にやってしまいたい性分なもので、数時間に及ぶ場合もあります。そんなときは当然ながら、周りが全く見えない"没入"状態にあります。

4 思い入れのある作品とその理由は?

 やはり「セル幅ミリ指定ツールVer3」ですね。私が一般向けに公開しているツールは、これ1つです。
それも最初は、れいぞーさんの強引な「うちのHPでアップするから、なんとか形にせい!」という命令で作ったもので、自発的に何かのプログラムを公開した、という経験はないのです。Ver3もないしょさんのご要望にお答えする形で、表作成機能を盛り込みました。しかし作成した当初に予想していたより多くの人が、セルの大きさをミリ単位で取得・設定できれば・・と考えていたことは、ファンクラブへの質問頻度によって分かりました。これは意外だったけど、同時にとても嬉しいことでした。やりがいがあったと思っています。

5 これからVBAを覚えようとういう方々へのアドバイスを!

 そうですねぇ・・あなたがやってみようと思ったきっかけは、何でしょうか ?
 もし"一度プログラミングというものを体験してみたい"という動機なら、それはそれでEXCEL・VBAは向いていると思います。なぜなら"マクロの自動記録"という機能がついているのは、EXCELぐらいだからです。何かの操作をしてそれがプログラミング言語に翻訳されて記録される・・それを見て「今やったことが、このように書くことで自動実行されるのか!」と感動すると共に、それを改造して少しずつ処理効率の向上や、多用な動作を付加していくことを学べるのですから、入門者としてはとてもありがたい機能だと思います。
 これにヘルプの利用を加えて、身につけていけば良いのですが実際のところ、ヘルプは入門者にとってはまだ敷居が高いと思われます。その場合参考書を買うことと、ネット上のQ&A板を活用することで、専門的な用語とかコーティングスタイルなどを学んで欲しい。何事も同じようなものかも知れないけどVBAにも「幹になる部分」→構文、「枝になる部分」→オブジェクト、「葉になる部分」→プロパティ・メソッド・・という基本構成がありますから、そのさえ掴めればあとはいくつ具体的な要素を習得するか、によって作成できるプログラムの幅が違ってくるわけです。
 戻って、VBAを勉強する動機が"仕事で止むにやまれず"という場合、とりあえず目先の課題を克服するためには、Q&A板に質問するなども良いのですが、VBAというものの性格上、1つでも多くの語句を身につけると、それだけ処理を効率化するコードが書けるようになるし、いろいろと応用を効かせてぐんぐん仕事の能率を上げられるようになるので、せっかくパソコンを使うなら、1つぐらいはプログラミング言語をマスターしてみて下さい。最初は壁が高く感じられるはずですが、1歩1歩着実に登っていけば、誰でも克服できる壁です。学歴も年齢も性別も関係ありません。必要なのは「モノにしてやるゾ!」という熱意だけです。このスキルは大げさに言うと「世界中どこへ行ってもエクセルがあれば通じる」という実力ですから、決して無駄になることはありません。将来リタイアされた後も、パソコンライフを充実したものにしてくれるはずです。このHPにある驚異的なゲームソフトだって、EXCEL・VBAで作れてしまうのですから

6 初心者時代の作品を当コーナーでアップさせていただけませんか?

 残念ながら、そういう類のものはありません。先にも書きましたように、自分の仕事に使うプログラム以外では「セル幅・・」だけしかお見せできるものが無いのです。何卒あしからず。

7 VBA作成時心がけていること、宣伝、直リン、何でも結構、最後に一言!

 エクセルのバージョンについての事を書いて欲しい、と言われましたので、付け足しのようになりますが、少し書かせていただきます。
 私は現在も、メインとしてEXCEL95を使っています。ソフト業界に身をおいているであろうと思われる、Q&A板の常連さんなどから、いつも"古い・低い、そんな骨董品など止めちゃえよ"という罵声(?)を浴びていますが、一向に気にしません。それはユーザーの立場として、ある意味当然のことだと考えているからです。
 そもそもEXCELというソフトは、万人向け・八方美人型の"商品"であります。商売なんだから当たり前ですが、1本でも多くの売上げを上げようとすれば、より多くの機能(しかも買ったことがない人に魅力的に映る)を盛り込んで、多用なユーザーのニーズに答えられる最大公約数的な商品にしなくてはなりません。そうすると、ある人にとっては"この機能をもっと充実させて欲しい"と願っているのに別の人にとっては"そんな永久に使いそうもないものは、切って捨てて欲しい" という正反対の要望が出ることになります。でも一方のみの要望を聞くことは"他方の顧客を失う"ことになりますから、絶対にできません。むしろどうでもいいような機能アップを、さも苦心の末に完成させた最新のテクノロジーのごとく宣伝して、その一方で以前のバージョンがとても陳腐なものであることを吹き込めば、それが新たな顧客を開拓することに繋がる、と信じているわけです。具体的な例は枚挙にいとまがないので書きませんが、そんなマイクロソフトの商売にのせられて「自分のやるべき仕事」を見失ってしまう愚は、避けたいものです。
 私の仕事は証券投資ですが、パソコンを購入する以前、膨大な数の銘柄の値動きを把握することは容易なことでない、というより殆ど不可能なことでした。今でも年配の投資家仲間の1人は、方眼紙にペンでローソク足(この世界で、株価の値動きを表す代表的なチャート)をつけて投資判断の武器にしていますが、それで管理できる数といえば、せいぜい20〜30銘柄が限界です。パソコンの専用ソフトを走らせると、3500銘柄の4本値表示&記録・チャート描画・各種テクニカル分析が、アッという間にできます。つまりこの仕事にとって、今やPCは絶対必要条件となっているのです。
 広い世界には、星の数ほど仕事と名のつくものがありますが、その大部分はPCを必要としていないはずだと思います。(PC = 広義のコンピューターという意味でなく、パソコン)そんな中から「パソコンを必要とし」「しかも数値計算とグラフィック中心の使用」を前提にした仕事を"たまたま"やっていたからこそ、それに見合うソフトを探していたらエクセルがあった。というのが私の出会いでありました。でもそれは初め、専用ソフトとは比較にならないほど使えない代物でした。(今でも歴然とした差はある) もちろん"万人向け・八方美人"ソフトなんだから仕方がないのですが、VBAでプログラムを作り、かなりのカスタマイズをすることで、漸く仕事の補助道具としての存在価値を保っている状況です。そこではダイアログシートをフォームやコントロールツールボックスに格上げ(?)したところで、何もメリットを感じるものはなく、むしろいろんな機能を追加することで、バグは増えるはファイルサイズが大きくなるはで「何でこんな余分なものまで買わされて、おまけにメモリの負担まで増すハメになるんだ!」というのが正直な感想なのです。
 (最近オークションでEXCEL2000を入手したので)長々と書いてしまいましたが「仕事からの要求」というのはいつまでも"帯に短し襷に長し"の状況を放置させてくれません。一方"組み込まれてしまった無駄"は、我々ユーザーが切って捨てるわけにはいきませんから、せめてシンプルな造りのバージョンを、精一杯VBAでカスタマイズすることによって少しでも「使える道具」に仕上げていこうというわけです。もちろん仕事なんですから "落ちる" → "水の泡" → "損失"という大前提で考えを進めることは、言うまでもないのです。実損が出たってマイクロソフトは責任とってくれません。どころかバグ取りなんぞという、目立たない&商売にならない作業は、やりたくないのが本音でしょう。ユーザーにとっての真の要望は開発側には負担でしかなく、しかも市場独占状態からパワーバランスを著しく欠いていることの弊害は、根深いものだということを、認識して欲しいと思います。


匠達のセル道TOP