2−1

請求書の入力フォーム

 

 

これまでに作成した顧客名簿テーブル、自社プロフィールテーブル、商品テーブルのデータを利用した請求書形式の伝票を作成します。

Accessのフォームウィザード(フォームを自動作成する機能)を使って作成することもできますが、そのためにはフィールド名、リレーションシップの設定などのさまざまな条件が整わないと期待どおりのフォームは作成されません。中途半端に作成されたフォームを作り替えるのはやっかいですし、自動的に設定されたプロパティの意味が理解できないとどう変更すればよいのか見当もつかないでしょう。

本書では、すべてを手動で作成する方法について解説しています。フォームについて理解が深まれば、ウィザードで作成されたフォームを目的にそって作り替えることができるようになるからです。

フォームの役割は、次のようなことです。

 

@テーブルに入力されているデータを適切に並べて表示する

Aデータ入力をしやすくする

Bテーブル内の特定のデータだけを抜き出して表示する

 

 

 

? 新規フォームを作成する

フォームにコントロールという部品を挿入して、さまざまな機能を付加します。コントロールには、テキストボックス、ラベル、コンボボックス、リストボックス、サブフォームなどの種類があります。ラベルコントロールは、フォームのタイトルやフィールド名を表示する機能をもちます。

 

1◆フォームの作成の流れ

 何も加工されていない白紙のフォームを作成し、そこにコントロールを挿入してタイトル表示、データ表示などのさまざまな機能を付加します。

また、作成中に新しいテーブルやフィールドの追加や削除の操作も行います。

フォーム作成の手順は、2.1のようになります。

 

 

@白紙のフォームを作る

 

Aフォームのもとになるテーブルを選択する

 

Bデータなどの表示処理を付け加える   ●テーブルに不足するフィールドを追加する

                    ●IME入力モードの自動切り替えを設定する

C入力支援機能や計算機能を付け加える  ●一覧表からの選択処理など、入力を簡略化するための入力支援処理を設定する

                    ●自動計算などの数式を挿入する

 

2.1 フォーム作成の手順

 

 


2◆白紙のフォームを開く

 まず白紙のフォームを作ります。そのフォームにさまざまなコントロールを配置して目的のフォームに仕上げます。

 

>操作

2.2 データベースウィンドウ

   @[フォーム]をクリックしてフォームウィンドウに切り替える

   ア作成済みのフォーム名が表示される

   A[新規作成]をクリックする

2.3 [フォームの新規作成]ダイアログボックスが表示される

   B[デザインビュー]をクリックして反転表示にする

   C[OK]をクリックする

2.4イ白紙のフォームが開く

   ウコントロール一覧のツールボックスが表示される

 

ツールボックスのタイトル部(2.4)をドラッグして、移動することができます。操作の

じゃまにならない位置へ移動しておきます。

線吹き出し 3: A

 

 


線吹き出し 3: B線吹き出し 3: ア     

線吹き出し 3: C線吹き出し 3: @AC7H004Z                      AC7H005Z

線吹き出し 3: エ

 

 


線吹き出し 3: イ線吹き出し 3: ウ       AC7H006Z

 

 

●コントロール一覧の表示と非表示

コントロール一覧のツールボックスが自動的に表示されなかったり、あるいは表示させ

たくない場合は、ツールバーの[ツールボックス]ボタンをクリックします。表示のときに

クリックすると非表示、非表示のときにクリックすると表示になります。メニュー操作

で表示する方法は126ページの「●テキストボックスの挿入」で解説します。

 

>操作

2.5@[ツールボックス]をクリックする

   ツールボックスの表示/非表示が切り替わる

線吹き出し 3: @

 


 AC7H0075Z

 

3 フォームのサイズを変える

新規のフォームは既定値サイズで作成されますが、フォームの4辺や4隅をドラッグし

てサイズを変更できます。サイズを大きくすると操作しやすくなります。

 

フォームの横幅や高さの変更

フォームの右辺や下辺にマウスポインタを合わせ、マウスポインタが両向きの矢印の形

になった状態でドラッグします。フォームウィンドウを少し広げて操作します。フォー

ムの高さ(天地)も同様の操作で変更できます。

 

>操作

2.6 フォームウィンドウ

   アフォームの本体

   @ウィンドウの右下角をドラッグアンドドロップでウィンドウサイズを変更する

   Aマウスポインタが両向きの矢印に変わる位置に合わせる

2.7Bドラッグして左右に移動する

2.8Cマウスボタンを放したときのサイズに変更される

   イ縦方向はフォームの下辺にマウスポインタを合わせてドラッグする

 

線吹き出し 3: A

線吹き出し 3: ア線吹き出し 3: @AC7H008Z

 

 

 

 

                                       AC7H009Z

 

線吹き出し 3: B AC7H011Z

 

線吹き出し 3: C線吹き出し 3: イ AC7H012Z

 

 

●フォームの天地左右のサイズを同時に変更

フォームの右下の角にマウスポインタを合わせ、マウスポインタが十字形の矢印になっ

た状態でドラッグします。

 

>操作

2.9 @マウスポインタが十字形の矢印に変わる位置に合わせる

    Aドラッグしてサイズを変更する

1.10マウスボタンを放したときのサイズに変更される

 

 

 

 

 

 

 

 

 

 

 

 

線吹き出し 3: A線吹き出し 3: @ AC7H013Z

 

線吹き出し 3: ア AC7H014Z

 

 

 

 


4 フォームのレコードソースを選ぶ

これから2.11のようなフォームを作成します。これは、顧客に発行する請求書ですから

、顧客名簿テーブルをもとにして請求先の宛名(2.11)が入ったものを作成します。

線吹き出し 3: ア

 

 


AC7H015Z

 

●フォームの作成

 請求書のフォームを作成し、もとになるテーブルを設定します。もとになるテーブルの

ことをレコードソースといいます。フォームのレコードソースは、フォームのプロパテ

ィで設定します。

 

>操作

2.12 デザインビューで開いたフォーム

   @[]ボタンを右クリックしてショートカットメニューを表示する

   A[プロパティ]を選択する

2.13 プロパティ一覧のダイアログボックスが表示される

   B[データ]タブをクリックしてこの一覧を表示する

   C[レコードソース]欄をクリックして[]ボタンを表示する

2.14D[]ボタンをクリックするとテーブル一覧が表示される

   E目的のテーブル(顧客名簿)を選択する

2.15F[×]ボタンをクリックしてダイアログボックスを閉じる

 

レコードソースを選択すると、フィールドリスト(2.15)も同時に開くことがあります。使わない場合は[×]ボタン(同図イ)をクリックして閉じます。

 

 

 

 

 

 

 

 

線吹き出し 3 (枠付き): @      

線吹き出し 3: AAC7H016Z                           AC7H017Z

線吹き出し 3: D

 

 


線吹き出し 3: E  

AC7H018Z                 AC7H019Z

 

線吹き出し 3: F線吹き出し 3: ア線吹き出し 3: イ            

AC7H020Z                              AC7H022Z

 

 

●フィールドリストの表示

閉じたフィールドリストは、ツールバーの[フィールドリスト]ボタンを押せばいつでも表示することができます(2.16)

 

 

線吹き出し 3: ア

 


 AC7H021Z

 

動作の確認

フォームビューに切り替えて、フォームの表示状態を見ておきましょう。ビューを切り

替えるときは保存操作を行います。

 

>操作

2.17@ [ビュー]ボタンをクリックする

2.18 フォームビューに切り替わる

   ア レコードソースに設定したテーブルのレコード番号が表示されている

   イ テーブルに登録している顧客数が72件なのでレコード数72が表示されている

線吹き出し 3: @

 


線吹き出し 3: イ  

線吹き出し 3: アAC7H023Z                                                      AC7H024Z

 

 

 レコードソースを設定しただけなので、フォームにはレコード番号とレコードボタンしか表示されません。レコード番号が顧客番号に相当し、[▲▼]ボタンをクリックするとレコードを選択できる状態になります。

デザインビューに戻って、コントロールを追加する操作を行います。

 


5◆テキストボックスにデータを表示する

テキストボックスを挿入して顧客名を表示させます。

 

●テキストボックスの挿入

ツールボックスが表示されない場合は、2.19[ツールボックス]を選択して表示します。

線吹き出し 3: ア AC7H025Z

 

ツールボックスの[コントロールウィザード]ボタンと[テキストボックス]ボタンが押し込まれた状態で操作します。

 

>操作

2.20[コントロールウィザード]ボタンが押し込まれた状態

@[テキストボックス]ボタンをクリックして押し込んだ状態にする

2.21Aドラッグアンドドロップの操作で挿入する

2.22 ウィザードが起動する

Bテキストボックスの表示スタイルを指定する

C[次へ]をクリックする

2.23 この画面に切り替わる

D[次へ]をクリックする

2.24 コントロール名の入力画面に切り替わる

E入力欄をクリックしてテキストボックス名を入力する(ここでは「顧客名」)

F[完了]をクリックする

2.25イフォームにテキストボックスとラベル「顧客名」が挿入される

線吹き出し 3: ア 線吹き出し 3: A

 

 


線吹き出し 3: @  

AC7H026Z           AC7H027Z

 

線吹き出し 3: B

 

 


線吹き出し 3: D 

線吹き出し 3: CAC7H028Z                  AC7H029Z

 

線吹き出し 3: E

 


 

AC7H031Z                  AC7H030Z

 

 

2.24Eの操作でテキストボックス名を入力せずに[完了]をクリックすると、2.26のように仮のテキストボックス名が表示されます。この名前は、システムの状態によって異なります。コントロールには、わかりやすい名前を付けるようにしましょう。

 

線吹き出し 3: ウ

AC7H030Z

 

●ラベルの削除

テキストボックスを挿入すると、標題用のラベルも同時に挿入されます。ラベルが不要な場合は、削除します。

 

>操作

2.27@ラベルを右クリックしてショートカットメニューを表示する

   A[切り取り]を選択する

2.28アラベルが削除される

2.29B[元に戻す]ボタンをクリックする

2.30イ元に戻る

 

削除したラベルは、他の操作を行う前なら[元に戻す]ボタンで復活させることができます。

 

 


線吹き出し 3: ア AC7H033Z

 

 AC7H034Z

線吹き出し 3: B

 


線吹き出し 3: イ  

AC7H035Z                   AC7H036Z

 

 

 

 

●ラベルの移動

ラベルだけを単独で他の位置へ移動することもできます。

 

>操作

2.31@移動するラベルの左上角の■(他より大きい四角形)にマウスポインタを合わせる

2.32A任意の位置へドラッグする

2.33アマウスボタンを放したときの位置に移動する

 

左上角の大きめな四角形以外の場所をつかんでドラッグすると、テキストボックスとラベルが同時に移動します。単独で移動するには、上記の操作を行います。同様の操作で、テキストボックスを単独で移動することもできます。

 

線吹き出し 3: ア線吹き出し 3: A線吹き出し 3: @  

AC7H037Z           AC7H038Z           AC7H039Z

 

 

●表示内容の設定

 挿入したテキストボックスに、選択しているレコード番号に対応する内容を表示させます。ここでは、顧客名簿テーブルの会社名フィールドの内容を表示させます。

 

>操作

2.34@挿入したテキストボックスを右クリックしてショートカットメニューを表示する

   A[プロパティ]をクリックする

2.35 テキストボックス「顧客名」のプロパティ一覧が表示される

   B[データ]タブをクリックして、この画面にする

   C[コントロールソース]欄をクリックして[]ボタンを表示する

2.36D[]ボタンをクリックしてフィールド一覧を表示する

   E[会社名]をクリックする

2.37[コントロールソース]欄に「会社名」が表示される

   F[×]ボタンをクリックしてウィンドウを閉じる

2.38イテキストボックスにコントロールソース(選択したフィールド名)が表示される

 

 

 

 

 

 

 

 

 

 

 

線吹き出し 3: @

 


線吹き出し 3: C線吹き出し 3: B線吹き出し 3: A  

AC7H040Z                        AC7H041Z

 

線吹き出し 3: ア線吹き出し 3: F線吹き出し 3: E線吹き出し 3: D      

AC7H042Z               AC7H043Z

 

線吹き出し 3: イ AC7H044Z

 

 

動作の確認

次の操作で確認しましょう。

レコードボタンをくりっくしてレコード番号を変えると、対応する顧客名が表示されます。なお、テキストボックスが反転表示になっていてやや見にくいのは、[Tab]キーで入力欄を移動すれば解消できます。

 

 

>操作

2.39 @[ビュー]ボタンをクリックしてフォームビューに切り替える

    アレコード番号「1」の顧客名が表示される

    Aレコードボタンをクリックする

2.40 イ次の顧客名が表示される

 

確認したら、[ビュー]ボタンをクリックしてデザインビューに戻ります。

 

線吹き出し 3: @

 


 AC7H045Z

線吹き出し 3: ア
線吹き出し 3: イ

 


 

線吹き出し 3: AAC7H046Z                   AC7H047Z

 

 

6 データの書き換えを禁止する

以上で顧客名を表示させるという目的は達成できましたが、1つ問題点が残ります。テキストボックスにテーブルのデータを直接表示しているので、フォームでデータを書き換えられるという点です。

このフォームの目的は、顧客名を編集することではなく、請求内容として顧客名を表示することです。このままでは、うっかり顧客名を書き換えてしまうという不都合が発生します。

これを解決するために、顧客名の表示に使っているテキストボックスのプロパティ[編集ロック]で表示専用に設定し、書き換えられないようにします。テキストボックスのプロパテウィンドウを表示してプロパティを変更します。

 

>操作

    コントロールを右クリックしてショートカットメニュー[プロパティ]を開く

2.41@[データ]タブの[編集ロック]をクリックして表示される[]ボタンをクリックする

   A[はい]をクリックする

2.42[はい]が設定される

   B[×]ボタンをクリックして閉じる

 

線吹き出し 3: B
線吹き出し 3: @

 

 


線吹き出し 3: ア     

線吹き出し 3: AAC7H048Z              AC7H049Z

 

 

7◆タイトルなどの文字列を表示する

フォームに文字列を表示するには、ラベルを使います。テキストボックスでも表示できますが、書き換える必要がない文字列なのでラベルを使います。

フォームのタイトルとして「請求書」、顧客名のうしろには「様」を表示することにしましょう。

 

>操作

2.43@ツールボックスの[ラベル]ボタンをクリックして押し込んだ状態にする

2.44Aドラッグアンドドロップの操作で挿入する

2.45アラベルが挿入され、文字入力が可能な状態になる

2.46Bタイトルを入力する

線吹き出し 3: A2.47Cフォームの任意の部分をクリックすると入力が決定する

 


線吹き出し 3: @  

AC7G050Z               AC7G051Z

 

 

 

 

 

 

 

 

 

線吹き出し 3: ア

 


線吹き出し 3: B

AC7H052Z                       AC7H053Z

 

線吹き出し 3: C AC7H054Z

 

●文字サイズの変更

ラベルの文字サイズは、プロパティ[フォントサイズ]で指定します。

 

>操作

2.48@ラベルを右クリックしてショートカットメニュー[プロパティ]を選択

   ア プロパティウィンドウが表示される

   A[書式]タブをクリックしてこの一覧を表示する

   B[フォントサイズ]欄の[]ボタンをクリックしてサイズの一覧から目的のサイズをクリックする

   C[×]ボタンをクリックしてウィンドウを閉じる

2.49ア文字サイズが変更される

 

 

 

 

 

 

 

 

 

線吹き出し 3: @

 


線吹き出し 3: C線吹き出し 3: A線吹き出し 3: ア 

線吹き出し 3: BAC7H055Z                       AC7H056Z

 

線吹き出し 3: ア AC7G057Z

 

 

入力内容の編集

ラベルに入力した文字列は、編集することができます。

 

>操作

2.50@ラベルをクリックして選択状態にする(マウスポインタは通常の矢印)

2.51アラベルのまわりに■が表示される

   Aもう一度ラベルをクリックする(マウスポインタはI型になる)

2.52イ入力内容の編集状態になる

2.53B文字列を編集する(ここでは文字間にスペースを入力し、決定は[Enter]キーを押すかラベル以外の部分をクリックする)

2.54ウ編集した内容が表示される

 

 

 

 

 

 

線吹き出し 3: ア
線吹き出し 3: A
線吹き出し 3: @

 


 

線吹き出し 3: BAC7H058Z                  AC7H059Z

線吹き出し 3: イ

 


 

AC7H060Z                  AC7H061Z

 

線吹き出し 3: ウ

AC7H062Z

 

●文字飾りや文字割り付け

太字や斜体などの文字飾りや中央揃えなどの文字割り付けを指定します。文字サイズやフォントの種類なども、プロパティウィンドウを使わずに、ツールバーのボタンで設定できます。

 

>操作

2.55@ラベルをクリックして選択状態にする

   Aツールボタン(ここでは[中央揃え])をクリックする

2.56ア中央揃えになる

線吹き出し 3: @

 


AC7H063Z

 

 

 

線吹き出し 3: ア

 


 AC7H064Z

 

 

●顧客名のうしろ「様」を付ける

テキストボックスで表示している顧客名のうしろに「様」という文字を付けます。タイトルと同じようにラベルをテキストボックスのうしろに挿入して「様」を入力します。文字サイズ(ここでは12ポイント)などは適切な値に設定しましょう。結果を2.57に示します。

 

線吹き出し 3: ア

AC7H065Z

 

 

8◆フォームに名前を付けて保存する

ここまでの内容を保存します。フォームを閉じるときに保存確認のメッセージが表示されるので、名前を入力します。

 

>操作

2.58@フォームの[×]ボタンをクリックする

2.59 保存確認のダイアログボックスが表示される

   A[はい]をクリックする

2.60 [名前を付けて保存]ダイアログボックスが表示される

   Bフォームを入力する

   C[OK]をクリックするとデータベースウィンドウに戻る([フォーム]タブのウィンドウ内にフォーム名が表示される)

   ア 作成したフォーム名が表示される

 

フォーム名は、[ファイル]メニュー→[名前を付けて保存]でも付けることができます。

 

 

 

 

 

 

線吹き出し 3: @  AC7H066Z

AC7H067Z

 

線吹き出し 3: C

線吹き出し 3: B 

線吹き出し 3: AAC7H068Z                       AC7H069Z

 

線吹き出し 3: ア AC7H070Z

 

 

 

 

 

 

 

キーワード

■レコードソース オブジェクト(テキストボックスなど)に表示するもとになるデータ(フィールドや参照式、計算式など)

■テキストボックスコントロール フォーム上などにデータを表示するために使用するコントロール。表示したデータの入力や編集も可能

■ラベルコントロール フォーム上などにタイトルなどの文字を表示するために使用するコントロール。表示したデータの入力や編集は不可

■ツールボックス 標準コントロールをフォームに挿入するための道具箱。画面上の任意の位置に移動できる

■プロパティ[編集ロック] コントロールなどに表示した内容を書き換えられないようにする