goo blog サービス終了のお知らせ 

パソコン悪戦苦闘記録

VBAプログラミング・その後

 <前回>の続きです。
 日曜日にせっせと自宅で作ったExcelマクロが、思ったとおりの動作をしなったのですが、ようやく (まさに本当に、苦労に苦労を重ねて”ようやく”) バグの原因を見つけました。
 シート保護をかけて、手動ではワークシート変更ができない設定にしながら、マクロからはシート変更が自由にできるというコード(・・・VBAマクロを作る方はご存知でしょうが・・・Protect UserInterfaceOnlyっていうコード・・・)があるのですが、このコードを入れるとうまく動かないことが判明しました。

  
 ちょっと専門的になるのですが、 Worksheets(1).Protect UserInterfaceOnly:=True のコードは、マクロからの変更は可能なはず(少なくとも、そういう理念のはず)なのに、マクロからの変更がシートに反映されないというのは、おかしいと言えます。もしかしたら、Excel自体のバグなのではないかと推測されるのですが、これを調べる気力は今のところありません。Microsoft Office製品の関連サイトをくまなく探せば出てくるかもしれませんね・・・・


 原因さえ分かれば回避策を作るのは簡単です。これまでのもモヤモヤがなくなり、気分が一気にスカッとしました。そうです、「モヤッと」が「スッキリ」に変わったのです(伊東四郎さんの番組)。
 これで、この1週間、不完全マクロに付き合ってくれた総務係員に、苦労をかけさせずに済みます。


 デバッグ作業が大変なことは、いろいろなところで紹介されているので、知っているつもりではいました。
 たとえば、大村あつし先生著「かんたんプログラミングExcel2002VBA基礎編」(通称かんプロ)には、
「デバッグは、・・・・・複雑な論理エラーが発生してしまうと、その作業は一転して苦痛と困難を伴うものとなります。」(同著148ページから引用)
とあります。
 しかし、バグを見つける作業の大変さを、私はこの度、初めて経験しました。まだまだ修行が足りないな・・・所詮、ホビープログラマーだと、思い知らされました。
 先週1週間は、本社からの事務監査が2日間あり、その対応と、本社から出張してきた監査社員の夜の接待なども重なって、金曜日の夜はヘロヘロになって帰宅しました。その金曜日は、夜9時に眠りに入り、翌土曜日になっても疲れがとれずに、夕方まで丸一日ベッドでごろごろと寝ていました。
「はれう」さんのこと<こちらを参照>を笑える資格はありせん。
(「はれう」さん、またまたごめんなさい。)

コメント一覧(10/1 コメント投稿終了予定)

goosyun
デバッグ
http://blog.goo.ne.jp/goosyun/
 >すこーぴおん さん

 すこーぴおんさんは、いろいろなデバッグを経験されてらっしゃるようで、ベテランのようですね。もしかして、本職?

 今後も、Excelマクロの話題は取り上げることがあろうと思いますので、どうぞよろしくお願いいたします。

 コメントありがとうございました。
goosyun
土日の昼寝
http://blog.goo.ne.jp/goosyun/
>はれう さん

 やぁ~、いらっしゃい。

 広い心で失礼な引用をお許しいただき、ありがとうございます。

 私は何を隠そう、土日の昼寝が大好き、特に土曜日の朝、いったん起きて朝刊を読んだ後の再度のまどろみは、最高のぜいたくです。

 ということで、「眠いときは眠っちゃいましょう。」のコメントに大賛成です。

 
すこーぴおん
こんばんは!
TBいただき、ありがとうございました。



前のページも読ませて頂きました。

色々と切磋琢磨されていらっしやいますね。えらい!



人は、思わぬことを考え、します。えっ!なんでこんなことするの?



どうしてこんな値がはいっているの?・・・デバックでいつも出会います。



なんで最初にいってくれなかったの?

そんなこと常識でしょ!

(この人だけの常識だったりします)



どれだけ「いろんな場合」を考えることが出来るかが勝負どころでは?



エクセルの最大の利点は、セル値や、シート変更が、いとも簡単に出来ることですが、これが最大の欠点になる場合があります。



ほかにも色々・・・

以上、私の経験からです。毒にも薬にもなりませんが!
はれう
眠い時は
http://blog.goo.ne.jp/hare-u/
うはは。只今ご紹介にあずかりました、はれうでございます

眠い時は眠っちゃいましょう。それが自然なのです。

休みの日くらいいいじゃないですか。会社に遅刻したら笑えないけど。

大人だって、昼寝でも、深~く眠っちゃうんです。

そういうことも、あるんです。(力説!)

名前:
コメント:

※文字化け等の原因になりますので顔文字の投稿はお控えください。

コメント利用規約に同意の上コメント投稿を行ってください。

 

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。
  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最近の「VBAプログラミング・マクロ」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事