【VBA】ユーザー目線で開発する4

ユーザーフォームに機能を実装する

初冷房つけました。jimです。どうも✋

さっそく【VBA】ユーザー目線で開発する3の続きいきます。

用意したユーザーフォームを実行して表示してみます。

はい、テキストボックスに文字を入力することはできますが、ボタンを押しても何も起こりません。

今回は、これらのオブジェクトに機能を実装していきます👈

とりあえず、VBEのユーザーフォームを右クリックし『コードの表示』を選択。コードを表示します。(もしくはF7)

次に、下図の赤枠を変更して、3つのプロシージャを用意します。(手打ちでもOK)

↓の3つです。

それではこれから順番に記述していきます。

初期化

まずは『UserForm_Initialize』からです。

ユーザーフォームが表示される時に実行されます。

どんな機能を実装するかというと、まずユーザーフォームのキャプションにユーザー名を入力します。

次に、データベースにキャプション名と同じユーザー名があるかを問い合わせます。

そして、ユーザー名があった場合、項目がNullでなければテキストボックスにデータを入力。っと、いった感じのものです。

挿入と更新

次は『CommandButton1_Click』です。

初期化同様に、ユーザーフォームのキャプション名から、データの有無を問い合わせます。

データがある場合はUPDATEのSQL文、ない場合はINSERTのSQL文を作成。

最後に、実行してユーザーフォームを閉じます。

削除

最後は『CommandButton2_Click』です。

これは単純に『キャプション名と同じデータがあれば削除する。』というSQL文を実行し、ユーザーフォームを閉じます。

挿入/更新も削除もですが、最後にユーザーフォームを非表示じゃなく閉じるにしたのは、テキストボックスをリセットするコードを削りたかったからです。

 

実装まとめ

これでDBの読み書きがユーザーフォームで出来るようになりました。

次回は、このDBを使った『例えばツール』を紹介します。んじゃまたね✋