Microsoft Access Club >初心者講座 >永年勤続管理ソフト >このページ >次頁 - 前項


永年勤続管理ソフト--07_入力フォームの作成



テーブル、クエリの作成をいままで行ってきました。その中で、皆さん「アレ!」と思われていたんじゃないでしょう?そうですね、データ入力はどのようにするのかと云うことです。

実は、会社でちょっとした事に使うAccessファイルは、テーブルに直接データ入力行っています。主に数値入力ですが…。しかし、本来は「フォーム入力」ですね。

 フォームの種類

フォームには、大きく分類して以下の種類があります。

  1. 単票形式
  2. 帳票形式
  3. データシート形式

フォームの作成は、Accessに備わっているフォーム作成ウィザードを利用する方法があります。大まかには、以下の手順で作成します。

  1. データベースウィンドウから「新規作成」をクリックはます。
  2. 下図のダイアログが現れますので、ウィザードに従って進みます。

今回の基礎データ入力フォームは、帳票形式フォームで作成します。データ入力項目が少なく、また多数の件数を扱う のが採用理由です。

 フォーム作成ウイザード

このウィザードは便利な反面、レイアウトの変更が必ず伴なう面があります。つまり、そのまま使う事は難しいんですね。Accessファイルの作成に慣れれば、白地のフォームからテキストボックスを新規作成し、独自のレイアウトを展開するなどしてお気に入りのフォーム作成を行うことができます。

また、他のフォームを複写し、そのフォームを元に新たなフォームを作成することなど、ご自分にあった、場面に合った方法を採用して下さい。以下に、フォーム形式別にお話します。

 単票形式フォーム

単票形式フォームは、テーブル(クエリ含む)の1レコードごと個別にフォーム上で表示します。

特徴
  1. 単票形式フォームは、他のレコードを誤って削除してしまったりすることがないので、不特定多数のユーザーがAccessファイルを取り扱う場合などに有効です。
  2. 日別、月別といった区切りあるデータ入力などには、単票形式を選ばれるといいでしょう。
  3. 入力を行なうフィールドがめちゃ一杯あるのなら、この単票形式がベターです。帳票式の場合、余り多くの入力フィールドがあるときには、ミスの原因となります。

フォーム上で特定のフィールド(テキストボックス)をある条件下で、例えば文字を太字にするとか、色を変えるとか、またそのテキストボックスを非表示にするとか、このようなことをやってみたい欲望は、フォーム作りで高まります。一度は、やってみたいんですよ。周りからも、「ウォー」という声が挙がりますし…。

この場合は、単票形式を選択して下さい。これを帳票形式で行なうとすれば、例えば下記の図で、「性別」が女であれば次の「入社日」フィールドを非表示すれば、「入社日」の全フィールドが非表示になってしまいます。

この問題は、よくAccess関連のBBSに登場するんですが、基本的に"できません"。基本的にと云ったのは、Access2000から文字の強調等、若干の操作ができるようになったんです。ただ、Access97以下のバージョンと混在する場合などは、使わない方がベストです。

 帳票形式フォーム

帳票形式フォームは、レコードソースとして指定されている1テーブル(クエリ含む)の1レコードごと、ずらーっと表示します。

特徴
  1. 連続入力に威力を発揮する形態です。下部に向かってどんどん下がっていきます。上記の単票形式の注意点を参考にして下さい。 今回のサンプルファイルでは、この帳票形式を用いています。
 データシート形式フォーム

データシート形式は、これは、あたかもテーブルを開いた時とほぼ同じ外観を持っています。(下記図参照)

特徴
  1. デザインビューで見ると、下記のように帳票形式(バージョンによって単票の場合あり)と同じ構造であることが判ります。
    このデータシート形式は、邪魔なものがないので見易い形式です。ただ、入力に用いるのは、私は好きではありません。

 読み取り専用フォーム

フォームを読み取り専用にする設定方法は、2種類あります。

  1. フォームのプロパティで設定する方法
  2. マクロ又はVBAを用いてフォームを開く際に読み取りオンリーの条件を付加する方法
フォームのプロパティで設定する方法

フォームプロパティの以下のプロパティを操作します。

  1. 更新の許可
  2. 削除の許可
  3. 追加の許可

全て いいえ に設定します。これで読み取り 専用フォームになります。

フォームを開く際に読み取りオンリーの条件を付加する方法

下図のようにフォームをマクロアクションを用いて設定します。このマクロアクションの引数内にある 「データモード欄」 に 読み取り専用 を選択し ます。

 使い分け

最後に、これら2種類の使い分けはどのようにすればいいのでしょうか?

  1. 読み取り専用のフォームとして活用するならば 1 の方法
  2. 時と場合によって使い分けるなら 2 の方法

を選択するように覚えて置かれるといいでしょう。
#1の設定をマクロやVBAで行なうこともできますが、今回は割愛します。ちょっと難しいので…。

 

ページの先頭へ 前ページへ戻る


永年勤続管理ソフト--07_入力フォームの作成


 

-Microsoft Access Club-