今回から新連載スタートです。「栄養計算ソフトにユーザーフォームを導入しよう」を開始します。
以前に作成した栄養計算ソフトに、ユーザーフォームを追加し、食品を簡単に入力できるようにしてきます。
初回である今回は、前提となる知識と、最終的にどのような形になるのか、ユーザーフォームを始めるための第一歩を紹介していきます。
前提となる知識
今回の連載においては、ExcelVBAの基本的な知識があることを前提としています。
基本的な知識があるといっても、何もVBAを自由に使いこなせるレベル、とまでは求めません。一応、VBA入門に該当する連載を、当ブログでも行っていますので、そちらを一応最後まで読んだよ、というレベルで構いません。
また、栄養計算を行っていくに際して、食品成分表に関する基本的な知識もある前提としています。こちらも、栄養学を学んだことがあったり、栄養士・管理栄養士を取得しているようなレベルであれば、問題はありません。
また、栄養計算ソフトを作成する連載も行っていますので、これを最後までご覧になることをおすすめします。
Excelで栄養計算ソフトを自作しよう!第1回:どんなソフトになるか?
それは少し時間的に面倒だという場合は、完成済みの栄養計算ソフトも用意してますので、そちらをご活用ください。
最終的にこうなる
では、最終的にこうなる、という完成形をお見せしたいと思います。
栄養計算シートに、「食品群から入力」と「検索して入力」のボタンを設置し、それをクリックすることでユーザーフォームが開きます。そのユーザーフォームから、栄養計算ソフトに食品を入力できるようにしていきます。
栄養計算ソフトを自作され、それを運用しているとわかるのですが、食品コードを手打ちするのはかなり面倒です。そのため、食品の一覧から、それを入力できたり、また検索して入力できたりすると、非常に楽になります。こういったフォームを、最終的には完成させたいと思います。
ユーザーフォームを始めよう!
ではさっそく、ユーザーフォームを始めていきましょう。以下の手順に沿って実行してください。
①まずは栄養計算ソフトをダウンロードしよう
自作した、栄養計算ソフトを開いてください。以前の連載で作成したものをご利用いただいて構いません。
なお、お持ちでない方は、こちらからダウンロードしてください。
②とりあえずユーザーフォームを作成してみよう
本日は導入ですので、とりあえずユーザーフォームを作成してみましょう。VBEを開き、「挿入」→「ユーザーフォーム」の順にクリックしてください。以下のようなフォームが作成されるはずです。
③メッセージを出してみよう
これでユーザーフォームを作成することができました。最初ですので、「Hello, World!」とメッセージを出すボタンを設置してみましょう。左側にツールボックスがあるかと思いますので、そちらの「コマンドボタン」をクリックし、フォーム上でまたクリックしてください。そうするとボタンが設置されます。
せっかくなので、このボタンに表示されている文字を変更してみましょう。ボタンを右クリック→「プロパティ」を選択してください。左側のウインドウに、ボタンのプロパティが表示されますので、「Caption」を「メッセージの表示」に変更してください。
次に、メッセージを表示するためのコードを記述していきます。フォーム上のボタンをダブルクリックしてください。そうすると、コードウインドウが表示されます。以下のようなコードが記述されているかと思います。
Private Sub CommandButton1_Click() End Sub
このコードは、コマンドボタンがクリックされた際に起動されます。早速、メッセージを表示するコードを追加してください。以下のようになれば正解です。
Private Sub CommandButton1_Click() MsgBox "Hello, World!" End Sub
では、実行してみましょう。左側のウインドウからフォームを選択し、フォームを編集するウインドウに戻ってください。その状態でF5を押して実行すると、フォームが表示されます。ボタンをクリックして、メッセージが表示されるか試してみてください。
まとめ
今回は、今後ユーザーフォームを作成していく上で必要となる前提知識と、最終的な完成形、また、実際にユーザーフォームを作成し、その始め方について紹介しました。次回はユーザーフォームの雛形を作成し、そのフォームを呼び出すためのボタンをシート上に設置していきたいと思います。