20.最終設定
いよいよ、アドレス帳ツールのラストです。ここでは、アドレス帳ツールを終了させる処理と、起動するときの設定を行います。
アドレス帳ツールを終了させよう
ここでは、フォーム「アドレス帳メニュー」のボタン[終了]と、フォーム「アドレス帳メニュー」のイベント[閉じる時]へVBAコードを記述します。まずは、フォーム「アドレス帳メニュー」をデザインビューで開いて下さい。

終了処理は、「1.フォーム「アドレス帳メニューを閉じる」、「2.Accessを終了する」の順序で行います。

フォーム「アドレス帳メニュー」をデザインビューで開いたら、まずはボタン[終了]のイベント「クリック時」へ次のようなVBAコードを記述します。フォーム「アドレス帳メニュー」を閉じる処理です。

 ■イベントプロシージャ「削除_Click」の作成例
Private Sub 終了_Click()

    '20.最終設定
    '記述先:フォーム[アドレス帳メニュー]/ボタン[終了]/[クリック時]

    'アドレス帳メニューを閉じます
    DoCmd.Close acForm, "アドレス帳メニュー"

End Sub
 ※これは、Access VBAです。

次に、Accessを終了させます。Accessを終了させるときは「Application.Quit」を実行します。この命令を、フォーム「アドレス帳メニュー」のイベント「閉じる時」へ記述しましょう。フォームのイベント「閉じる時」とは、フォームを閉じたときに実行されるイベントです。

ちなみに、ボタンのイベント「クリック時」ではDoCmd.Closeを実行、Application.Quitはフォームのイベント「閉じる時」で実行しますが、これには理由があるのです。というのも、ボタンをクリックしたときだけApplication.Quitが実行されるような仕組みだと、それ以外の方法、例えばフォームので閉じたときにAccessが終了しないからです。

 ■イベントプロシージャ「削除_Click」の作成例
Private Sub 終了_Click()

    '20.最終設定
    '記述先:フォーム[アドレス帳メニュー]/イベント[閉じる時]

    'Accessを終了します
    Application.Quit

End Sub
 ※これは、Access VBAです。

全てのVBAコードを記述したら、終了処理が正常に動作するか確認してみよう。手順は、フォーム「アドレス帳メニュー」をフォームビューで開き、[終了]ボタンをクリックするだけです。ただし、テストを行う前に必ず全て保存しておいてください。

それと、終了処理が正常に動作するとAccessも終了してしまします。面倒でも、もう一度アドレス帳ツールのMDBを開いて下さい。
MDBを開いたときにアドレス帳メニューが開くようにしよう
アドレス帳ツールのMDBファイルをAccessで開いた時、毎回手動で「アドレス帳メニュー」を開くのは面倒です。もし、Accessの使い方を知らない人に使わせる時は、「こうやって、これをこうするんだよぉ〜〜」って、アドレス帳メニューをフォームビューで開く方法から教える手間も必要ですね。

こんな面倒なことはしてられません!アドレス帳ツールのMDBファイルを開いたときに、自動的にフォーム「アドレス帳メニュー」が表示されればよいのです。

こういった設定は、[ツール]−[起動時の設定]で行います。起動時の設定手順と設定内容(別ウィンドウで開きます)を参考に行ってみて下さい。
起動時の設定後に何らかの変更を加えたい時
起動時の設定手順と設定内容(別ウィンドウで開きます)」で行ったような設定を行うとデザインビューが使用できなくなります。これでは、後で手を加えたい時に困りますね。しかし、起動時の設定をスキップして開くことができます。

MDBを開くときにShiftキーを押しながら開いてみてください。「セキュリティ警告」のダイアログが表示された場合は、SHIFTキーを押しながら「開く(O)」をクリックしましょう。起動時の設定など自動実行関連が全てスキップされ、MDBを開発時の状態で開くことができます。
というわけで…
アドレス帳ツールの作成は、これで全て終了です。アドレス帳ツールを完成することができた方、おめでとうございます!途中で挫折してしまった方、掲示板へどうぞ…。

Accessっていうのは、VBAでプログラミングすることに加えて、SQLを使ってテーブルからデータを取り出したり、データを更新したりといった、VBA以外の知識も必要とするので、最初はとっつきにくいかもしれません。しかし、アドレス帳ツールを作る中で体験した様々なテクニックは、今はピンとこなくてもAccessを使い込んでいけば徐々に見えるようになってきます。

重要なのは「体で覚えること」、「感覚として覚えること」です。プログラミングなんてものは、所詮コンピュータと会話するようなものだから(笑)
Copyright(C) 1999-2006 結城圭介。 All rights reserved