「入力はなんだっけ?」、「マスター格納先はどこ?」
自身で作ったVBAツールでも、数ヵ月も経過すると仕様を忘れてしまうもの。
みなさん、こんにちは。セルネッツ竹本です。
今回は、プログラム実行前の意思を問う「MsgBox」をテーマに解説をしたいと思います。
◆改修依頼がきた時、思い出し作業は非効率
下記のコラムでも紹介しましたが、肝心なことは、備忘メモしておくのが一番です。
【VBA入門】Thisworkbookに何を書いているの?プロの活用提案
例えば、[実行ボタン]というコマンドボタンの名称からは、処理内容が把握できません。
最低限せめて知りたいことは、Input、Outputの関係性です。
何を入力として、プログラム処理によって、何が出力されるのかを、「Msgbox」でおおまかにでも把握できると処理内容もイメージしやすくなります。
◆応答メッセージBOX表示の目的とは
一番の目的は、「実行前の意思(はい・いいえ)を問うこと」です。
以前、プログラミング研修をしたことがあるのですが、受講生のプログラムでこんなことがありました。
[実行ボタン]はあるのですが、メッセージBOXによる直前の意思表示がないのです。
そのため、ボタン押下した瞬間に、無条件でプログラム処理が実行されてしまうという作り方でした。
何故、省略したかを聞くと、「処理内容を理解しているから」という理由でした。
本人としては、自分しか使わないし、間違えても影響がわかっているため心配なし。
ということでしたが、利用者目線でシステム操作性を考えたときに、とても大事なことがあります。
それは、誤ったボタン押下対策もそうですが、
「あっ、今ではなく、お昼を済ませてからやろう」
「このボタンって何だっけ?押してみよう」
といったシーンも想定されるため、「取り消し」「中止」といった選択肢も重要な意味を持つのです。
そして、やはり「実行の意思を問う」ことは大事な設計となるのです。
社内マクロ開発とプロが手掛ける受託開発には、設計や仕組み、中間データ保持など、多くの違いがあっても、利用者目線にたった操作性(考慮配慮)という点は大切にしたいものです。