CDアルバム管理ソフトを作ってみよう!
●仕上げ●
 
それではインデックスフォームとスタート画面の作成に入りましょう。
これはもう好みで作っていっていいですよ。
サンプルはこんな感じに仕上げました。
 
では細かく見ていきましょう。
まず、新規にフォームをつくります。空でいいですよ。
そしてプロパティを変更します。
  1. 「境界線スタイル」は「なし」
  2. ポップアップ及び作業ウィンドウは共に「なし」
  3. スクロールバーは「なし」
  4. レコードセレクタ及び移動ボタン共に「いいえ」
ツールボックスから「四角形」を選択し、インデックスメニューの大きさにしてください。

これはコマンドボタン作成前につくりましょう。そしてプロパティを

  1. 境界線スタイルを「実線」
  2. 境界線色を 0
  3. 境界線幅を 5ポイント        とします。
もう一つ、その中に「四角形」を配置しましょう(この上にコマンドボタンを置きます)。
プロパティは
  1. 背景スタイルを「普通」
  2. 背景色を 12632256
  3. 立体表示を「枠囲み」
  4. 境界線スタイルを「透明」      とします。
上部にラベルを配置し、標題をつけます。プロパティは適宜変更して下さい。
 
次にコマンドボタンを配置します。
  1. 縦横サイズ、及び標題は好みで決めてください。
  2. 各コマンドボタンのプロパティで「ヒントテキスト」と「ステータスバーテキスト」に説明文を記述します。
  3. プロパティの「タブ移動順」の設定を確認し、適宜修正を行います。0が一番最初です。
  4. プロパティの「クリック時」イベントにマクロを配置する作業は後述します。
ここで一度、適当なフォーム名をつけて保存します。フォーム名は、「frm_index」とします。
 

次はこのインデックスフォームから各イベントを実行するためのマクロ(マクロ名:mc_kihon)を作成します。

終了コマンドにはMsgBoxを利用し条件式を設定します。
 
 
「入力画面」の「フォームを開く」は、上記
 
「検索画面」の「フォームを開く」は
    フォーム名:frm_kensaku_2 / ビュー:フォームビュー /ウィンドウモード:標準
 
「削除」の「フォームを開く」は
    フォーム名:frm_sakujo / ビュー:フォームビュー / ウィンドウモード:標準
 
「終了」の条件とアクションは、上記
 
「印刷」の
  「閉じる」アクション(上)は、
    オブジェクト種類:フォーム / オブジェクト名:frm_index    オブジェクトの保存:しない
  「レポートを開く」アクションは、レポート名:rpt_main / ビュー:印刷
  「閉じる」アクション(下)は、
    オブジェクト種類:レポート / オブジェクト名:rpt_main / オブジェクトの保存:しない
  「フォームを開く」は、
    フォーム名:frm_index / ビュー:フォームビュー /ウィンドウモード:標準
 
「入力画面」 「検索画面」 「削除」の「閉じる」アクションは、
    オブジェクトの種類:フォーム / オブジェクト名:frm_index / オブジェクトに保存:しない
 
 
各コマンドボタンの「クリック時」イベントにおのおの設定します。
なお、閉じた後、該当フォームを開くマクロを作成すると、動作がぎこちなくなるので気をつけてください。
マクロは上からの記述通りに実行していきます。
 
コマンドボタンをクリックした後の画面表示の流れを少し修正します。該当フォームが開き、そのフォームを閉じれば又、インデックスフォームが再び開くという一連の流れがを追加します。
上記以外のマクロに加えて、「frm_sub」以外のフォームの「閉じる時」イベントに設定するマクロを作成します。
 
mc_kihonに、各フォームの「閉じる時」イベントに設定するマクロを追加します。
    マクロ名:閉じる時 / アクション:フォームを開く /フォーム名:frm_index
    ビュー:フォームビュー / ウィンドウモード:標準
マクロを追加したら、各フォームに設定してください。(「frm_sub」には設定しません。)
 
これでインデックスフォームが完成しました。
一度動作確認してください。
 
 
 
それではスタートアップフォームの作成に移りましょう。
こんな感じにしてみようと思います。
 
 
概略は下記の通りです。
  1. アプリを開くと、自動的にたちあがる。
  2. チェックボックスを設けて、表示の有無の選択を可能にする。
  3. 5秒後に自動的に閉じる。
  4. 画像をフォーム上に表示する。
では空白のフォームを作成して下さい。フォーム名は、「frm_start」とします。
そしてプロパティを下記の通り変更します。
  1. 「境界線スタイル」は「なし」
  2. ポップアップ及び作業ウィンド共に「はい」
  3. スクロールバーは「なし」
  4. レコードセレクタ及び移動ボタン共に「いいえ」
次にテーブル名「tbl_ck」のテーブルを作成します。
フィールドは、「ID」(オートナンバー型)、「CK」(Yes/No型)を配置します。キーは、「ID」に設定します。
このテーブルは表示の有無を選択するために使います。
スタートアップフォームの「データ」の「レコードソース」に「tbl_ck」を指定して下さい。
また、スタートアップフォーム上でチェックボックスのオンオフができるようにオブジェクトを配置します。
プロパティで「データ」の「コントロールソース」に「CK」を選択して下さい。
 
また、マクロ名「AutoExec」のマクロを作成します。必ずこの名前にしてください。
このマクロはファイルを立ち上げたときに実行するマクロです。大文字小文字にも気をつけてください。
マクロの記述は下記の通りです。
下の方のフォーム名は「frm_index」です。(条件の結果がTrueの方)
 
この条件式は「tbl_ck」テーブルのIDが 1 のCKが False(チェックオフの状態) であれば、
「frm_start」フォームを開きます。
True(チェックオン)であれば、「frm_index」フォームが開きます。
この条件式でスタートアップのオンオフが可能になります。
よって、新規入力をさせないために、スタートアップフォームのプロパティで「追加の許可」を「いいえ」にします。
 
次に、「自動的にフォームを閉じ、次のフォームを立ち上げる方法」には、フォームの「タイマ時」及び
「タイマ間隔」イベントを使います。下記のように設定してください。
マクロ名「mc_startup」を作成し、「スタートアップフォームを閉じて基本フォームを開く」アクションを設定します。
 
マクロ名「mc_startup」

「フォームを開く」アクションは、

  フォーム名:frm_index / ビュー:フォームビュー / ウィンドウモード:標準
  
「閉じる」アクションは、
  オブジェクトの種類:フォーム / オブジェクト名:frm_start /  オブジェクトの保存:しない 
 
「メッセージボックス」アクションは、
  メッセージ:バグ等がございましたら、ご連絡ください。 / 警告音:はい
  メッセージの種類:情報 / メッセージタイトル:BEより皆さんへ
 
ちなみに「タイマ間隔」はミリ秒で指定します。また、このイベントはキャンセルできないので注意しましょう。
 
また、画像の配置はツールボックスの「イメージ」と「非連結オブジェクトフレーム」を利用する二通りの方法があります。
またこれ以外でも「連結オブジェクトフレーム」もありますが、これを利用するとリンクされてしまいますので他のパソコン上ではエラーになるので注意して下さい。
 
 
では、最後の仕上げにとりかかりましょう。
他の人にこのファイルを配る場合など、あまり設定をいじられたくないときにいじれないような設定を行っていきます。
まずは概要を示しますので、すぐにとりかからないで下さい。
 
  1. 「ツールメニュー」の「起動時の設定」を各種行う。
  2. 「ツールメニュー」の「解析」の「パフォーマンスの最適化」を行い、チェックを行う。
  3. 「ツールメニュー」の「セキュリティ」の「データベースパスワードの設定」を必要があれば行う。
  4. 「ツールメニュー」の「データベースユーティリティ」の「最適化」を適時行う。
  5. 「ツールメニュー」の「データベースユーティリティ」の「修復」を適時行う。
  6. 「ツールメニュー」の「データベースユーティリティ」の「MDEファイルの作成」を必要があれば行う。
  7. 「ツールメニュー」の「レプリケーション」の「レプリカの作成」を必要があれば行う。
  8. 「ツールメニュー」の「アドイン」の「データベース分割ウィザード」を必要があれば行う。
これらはやってもやらなくてもいいのですが、一応ざっと見ていきましょう。
 
1.起動時の設定
 
「アプリケーションタイトル」には好きなタイトルを入れてください。
アクセスの左上にタイトル名が表示されます。
「アプリケーションアイコン」を設定するのであれば拡張子は「.ico」で作成したほうがいいです。
しかしウィンドウズでは「.bmp」でも表示できるので、パス名を記述してください。
これは「連結」扱いになりますので、他のパソコンでは表示されません。
 
あとのメニューバーや他のメニューバー関係のチェックをオフにすると、開いた人は勝手にいじれなくなります。
注意:この設定を行った後に閉じて起動すると、編集ができません。
   もしどうしても編集したいときは、「Shiftキー」を押しながら開くと、「起動時の設定」を無効にできます。
だだし自分しか使わないというのならチェック済みでもかまいません。
 
次にフォームの表示です。
ファイルを立ち上げた時に、どのフォームを自動的に表示するかを指定します。
今回は「AutoExec」マクロを作成しているので空白にしておきます。
データベースウィンドウは非表示が望ましいのでチェックオフにします。
インデックスメニューから全て操作できるようにシステムを構築していますものね。
 
 
2.パフォーマンスの最適化
このツールは便利で、全てのオブジェクトを対象に指定し実行すると、上記の表示が最後に現れます。
 
他のテーブルとの関連付けはしなくていいです。
テキスト型の変更は、ランク付けに日本語を入れないのであれば変更してください。
コントロールを減らします、というのも無視していいです。
マクロをVBAに変換するのは、好みでしてください。
 
3.パスワードの設定
パスワードの設定もお好みでどうぞ。ただし忘れてしまわないようにしましょう。
 
4.データベースの最適化
4の「最適化」の設定は定期的に行ってください。
アクセスファイルは使えば使うほど容量が増えていきます。
データの隙間が広がるんですね。実行のスピードも落ちますので、たまに最適化して下さい。
 
5.データベースの修復

5の「修復」の設定もたまに行う事をお奨めします。

アクセスファイルを使用中にハングアップしたとか、正常に終了しなかった時に実行してください。
簡単なエラーなら修復してくれます。
 
6.MDEファイル(実行ファイル)の作成
6の「MDEファイルの作成」の設定もできれば行うといいです。
この .mde ファイルは別名「実行ファイル」ともいって、データベースウィンドウに表示されるフォーム、レポート、
モジュールをデザインビューで開くことができなくなります。
セキュリティ面と著作権保護の観点からみるといいことですが、
テーブル、クエリー、マクロは自由に変更することができてしまうのが難点です。
これを避けるには、ワークグループなどで利用権を定めたアクセスのより強力なセキュリティ機能を利用して下さい。
ここでは解説は割愛しますが。
 
7.レプリカの作成
7の設定は希望する人だけでいいです。
レプリカ、つまり複製を沢山つくってネットワーク等で使用します。
それらを定期的に「同期」させて常に最新の情報を保つ事ができます。
 
8.データベース分割ウィザード
8の設定については、ネットワーク接続を前提にアクセスファイルを使用する場合では有効です。
これはテーブルとそれ以外のオブジェクトを分割してあたかも一つのアクセスファイルのように使用する方法です。
メリットとしてはテーブルを格納したアクセスファイルをサーバーに一つだけ配置して、クライアント側にそれら以外を持つアクセスファイルを複数配置することができます。
デメリットとしては機動性がなくなり、多少反応に時間がかかります。
なので家や会社で使うのには向きませんし、容量の大きいファイル意外は不要です。
 

さて、長い間お疲れさまでした。
結構苦労した人も多いのではないでしょうか。
でも、うまくいかなかった所ができるようになった時、
きっと格別な喜びがあったと思います。
今回使ったのは、アクセスのほんの入り口程度の機能で、
まだまだ奥が深いソフトです。
どうぞもっともっといろいろなファイルを作って
アクセスの道を極めてください。
拙い説明におつきあい下さってありがとうございます。
 
 
サンプルです。よかったら使ってください。
わからないところは、完成したファイルを真似てみるといい勉強になりますよ。
データベースウィンドウを開けたいときはF11を押してください。
album.lzh(lzh形式 116kb)  
解凍後、album.mdbのファイルサイズは、676kbです。
 
完成おめでとうございます!
 

 

 
 
(C)1999-2003 BE CORPORATION All rights reserved.Terms of Use. Privacy Policy.