2013年9月7日土曜日

VBAでのチェック

最近Excel VBAからは、離れているんですが、
Windows以外のことを考えると、VBAの多用を
控えていったほうがいいのかなとも思いました。

それでも、エクセル上で、いろんな自動処理をするに
あたっては、VBAが一番、融通がきくとは思っています。


先日、お客様から、今まで動いていたマクロが
動かなくなったんですけど。という電話があり
急遽、お邪魔しましたが、

原因は、メールで送られてくるエクセルのシート名が
以前と変わってしまったため、マクロ(VBA)実行時に

インデックスの範囲外です という旨のエラーが出ていました。


読み込むエクセルは、パスやファイル名、シート名も変更が
ありえるので、、処理するエクセルのシート上で、

シート名も変更できるようにしていましたが、
実際に、存在しないシート名のとき、


「シート名が、存在しません」というメッセージまでは
出していませんでした。

後から思えは、それくらいまでは、マクロの中で
チェックさせるべきだったのかなとも思いますが、


エクセルに関して、あまり、厳密にエラーチェックをするのは
個人的には、賛成しかねます。

作成側がこのようなことをいうと、なぜ?と思われるかも知れませんが

エクセルの手軽さ、汎用性が、なくなってくるように思います。


どこまでのチェックを行うのかというのは、そのつど、
判断が必要かも知れません。

0 件のコメント:

コメントを投稿