<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 MS-Access97大魔法陳列棚>CDレコード収蔵DB



【仕 様 な ど】MS-Access97で作成。Windows95でのみ動作確認。

【ダウンロード】←Zip形式
             (解凍後、mdb初期状態:およそ300KB)

【主 な 機 能】

自分の持っているCDやレコードやビデオを、一元管理するためのDB。

アーティストごと、レコード会社ごとなどに分けて、ランキング表を出すことができる。

マスター登録をしておくことで、入力作業の軽減をはかる。

【も ろ も ろ】

CDやレコードって、たくさん持ってる人は部屋の中にあふれんばかりですよね。
整頓するためのソフト、市販されてるのもあるし、シェアorフリーウェアで見かけることもあるんですけれど、自分で作ることのメリットは、自分なりに工夫ができるということだと思います。
人によって、欲しいフィールドとか、フォームのレイアウトとか、こだわりがありますものね。そこで、これはぜひ「たたき台」という感じで、あっちこっちいじって変えていっていただきたいなと思いながら作りました。

入力フォームは、初期状態はこんな感じになっています。
最初、「いんたーねっとだし、英語で作らなきゃ・・」と思って、フィールド名を片言の変な英単語にしちゃったんですけれど、よく考えたらあんまり意味ないですよね。。とっても後悔してます。
特に珍しい機能はないので、ごくフツウのサブフォーム形式のフォームなんですが、細かい技をいろいろ使ってます。

以下に、使用しているめぼしい機能をいくつか解説しています。よろしければご参照ください。


タイトル入力画面

メモ欄は、メモ型のフィールドを使用しているので、95のメモ帳と同じ分だけ文字の入力ができます(64kb)。
このテキストボックスのプロパティを見ると、スクロールバーの出し方や、「Enterキーは改行かコントロール移動か」設定できますので、お好みの設定に変更してください。
「え?なんでこんなCD買ったんだっけ・・・」なんて人は・・いないかもしれないですけれど、買ったときの状況とか、聞いた感想とか入れておくと面白いと思います。


Typeの欄は、私お得意のトグルボタンを8個使って、媒体を選別しています。
グループ(xyz)枠の中に、8つのトグルボタンを配置します(コピーペーストじゃなくて、ちゃんと作らんといけん)。
トグルボタンには配置した順番に1,2,3,・・・とデータ番号みたいなのがつきます。
で、最終的にはグループ枠(フレーム)がひとつのコントロールになります。
テーブルの中の「Type」というフィールドと結びつくのは、トグルボタンではなくてこのフレームです。
フレームのコントロールソースのところに、フィールド名が入るようにしましょう。トグルボタンのコントロールソースは全部空っぽのままです。
このフレームのプロパティの「既定値」を1にしておくと、フォームを開いたとき、CDのトグルがへこんだ状態になります。
で、「あ、こりゃDVDだ」というときは、DVDのトグルをクリックすると、こいつがへっこんでCDのトグルは出っ張ります。
グループ内の8つのトグルのうちの、ひとつだけがへっこむようになるわけです。

で、フィールドの中には、へっこんだトグルの値(1〜8までのどれか)が入ることになります。

コンボボックスだと選択し忘れたりする人も多いんですけれど、こういう仕掛けにしておくと「お、何だろう」って、見落とさずに選択してくれますよ。きっと。


後は、下の方に「評価」を付けられるようにしています。
これはいわゆる「スピンボタン」の活用です。
Accessのコントロールではないのでちょっと使いにくいですが、ウマく使えば結構面白いと思います。OLE プログラム ID (ActiveX コントロール)の一種です。

ツールボックスの[コントロールの選択]、あるいはメニューバーの[挿入]→[ActiveX コントロール]のどちらかで、ActiveX コントロールの選択ができる画面が出てきます。
私が使ったのはMicrosoft Forms 2.0 SpinButtonというやつです。
いろんなメーカーのソフトを導入しておられる場合は、そこのメーカーのスピンボタンコントロール名も出てきます。
同じだと思いますが、プロパティの名称などが違いますのでご注意を。

フォーム作成

で、スピンボタンだけだと、本当にスピンボタンだけなので、テキストボックスとかを横に作って組み合わせて使います。
横に広げれば、左右向きのスピンボタンになります。
スピンボタンのプロパティの「その他」の欄に、valueとかMinとかMaxという値があります。
このスピンボタンの最初の値がいくつで、いくつが最低で、いくつまで増やすことができるのか指定します。
スピンボタン自身は、ちゃんと値を持っているのですが、自分の体には表示するところがないので、この値をテキストボックスとか他のコントロールに表示させてもらって働くのです。

この値を、うまくテキストボックスの方に移すのですが、フツウはクラスモジュールにSpinup()、Spindown()というプライベートプロシージャを作って、その度にテキストボックスに自分の値を代入するアクションを動かします。このイベントは、プロパティシートでは見当たらないので、ActiveXのヘルプで、イベントの一覧を参照してください。

このデータベースでは、★の数を増やしたり減らしたりしています。スピンボタンの更新時に涙ぐましい関数が動くようにしています。
以下はコードのサンプルです。
Selectステートメントを使って、スピンボタンのValueの値に合わせて表示する★の数を設定しています。工夫すれば、多分、数によって★の色を変えたりすることもできると思います。

Public Function SpinButton1()
Forms!MainRackForm!StarCount = Forms!MainRackForm!EstimateButton.Value
Select Case Forms!MainRackForm!EstimateButton.Value
Case 1
Forms!MainRackForm!Estimation = "★"
Case 2
Forms!MainRackForm!Estimation = "★★"
Case 3
Forms!MainRackForm!Estimation = "★★★"
Case 4
Forms!MainRackForm!Estimation = "★★★★"
Case 5
Forms!MainRackForm!Estimation = "★★★★★"
Case 6
Forms!MainRackForm!Estimation = "★★★★★★"
Case 7
Forms!MainRackForm!Estimation = "★★★★★★★"
Case 8
Forms!MainRackForm!Estimation = "★★★★★★★★"
Case 9
Forms!MainRackForm!Estimation = "★★★★★★★★★"
Case 10
Forms!MainRackForm!Estimation = "★★★★★★★★★★"
Case 0
Forms!MainRackForm!Estimation = " "
End Select
End Function

なんとなく、Accessのフォームで利用すると、クリックの反応がよくないような気がしたのですが・・・。
滑るというか。スピンボタンは少し大きめに作るとよいでしょう。