ExcelVBAのフォーム機能を使ってみました。
フォーム機能はVBAにおいて一般的な画面UIを実装する機能です。
Excelではのシート上にボタンを自由に配置でき、なおかつシート上であれば表計算部分を動作させながら操作できるので、エンジニア自身が使うツールのUIとしてフォームを使うメリットはあまりありません・・・
が、誰かに使ってもらいたい、規定の操作以外はできないようにしたいという際はフォームを作ることがあります。
フォームのデフォルト
エクセルっぽさはなく、何かしらのソフトを起動した際の画面みたいになりましたね。
そのフォームに所狭しと色々な画面要素を貼り付けてみました。
なお、作ったフォームはVBAで 下記のように記述すると起動したり終了したりできます。
【フォームを起動】
{フォーム名}.show
【フォームを終了】
Unload {フォーム名}
フォームがあるとExcelVBAで作ったプログラムが一気に表計算ツールからアプリケーションのような見た目になりますね!
(アプリケーション作るんだったら他の言語でやった方がよいと言ってはいけない・・)
最近ちょこちょこVBAの記事を出していますが、仕事に役立つソフトを作って欲しいという依頼があり、個人でExcelVBAを使ったシステムを作成中です。
上手く作ることができれば、今後私はExcelVBAエンジニアとしてフリーランスでも通用する気がするので頑張ります。