今回は、Accessフォームの一機能であるデータシートフォームの使い方を解説します。
もくじ
データシートフォームはAccessの解説書籍にもあまり出番のない、どちらかというと目立たない機能です。
かつて10年前にAccessを学び始めたぼくも、ほとんどデータシートフォームを使うことはありませんでした。
しかし、Accessでシステムを開発する経験を重ねる度にデータシートフォームの便利さに気付き、今ではAccessの開発に欠かせないものになっています。
この記事では、データシートフォームの作り方だけでなく、データシートのメリットやよく使うプロパティについても触れました。
記事を読んでいる方には、データシートフォームの便利さに気づき、愛用するきっかけにぜひしていただきたいです。
データシートフォームの作成手順
データシートフォームはフォームウィザードでも作成できますが、もっと簡単な手順を紹介します。
慣れてしまえば、10秒程度でデータシートフォームを仕上げられます。
まずはフォームやクエリなど、すべてのオブジェクトを閉じておきましょう。
元データのテーブル・クエリを正しく指定するためにも必要です。
![オブジェクトを全て閉じた状態](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_04_03.jpg)
次に、元データのテーブルやクエリを選択された状態にします。
![データシートフォームの元データを選ぶ](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_05_03.jpg)
そのまま、フォーム作成メニューのデータシートをクリックします。
![データシートをクリック](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_06_01.jpg)
データシートフォームが作成されました。見た目はテーブルやクエリと全く同じです。
![データシートフォームが作成された状態](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_07_01.jpg)
閉じるボタンをクリックすると、フォーム名を入力するダイアログが起動するので「はい」をクリックします。
![はいをクリック](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_08_01.jpg)
フォーム名を変更して「OK」をクリックします。
![フォーム名を入力](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_09_01.jpg)
フォーム名はデータシートフォームであることが分かりやすいものにするとよいでしょう。
ちなもに、ぼくの場合は「フォームのF」と「データシートのDS」を名前に必ず含めるようにしています。
オブジェクトブラウザを確認すると、作成したデータシートフォームを表示できました。
![作成されたデータシートフォーム](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_10_01.jpg)
データシートフォームをつくるための手順は以上です。
出来上がったデータシートフォームの使われ方は、大きく2つの方法に分かれます。
一つ目は、一覧表として空白フォームなどに貼り付ける方法です。
この方法では、データシートフォームのみで全レコードを表示できます。
![空白フォームに貼り付け](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_11_01.jpg)
もう一つは、明細データとして単票フォームに貼り付ける方法です。
この方法では、対象の伝票データと明細データを一つの画面で閲覧できます。
![単票フォームに明細として貼り付け](https://sys-daddy.com/wp-content/uploads/2023/05/make_dadasheet_form_12_01.jpg)
データシートフォームの便利な点
では、データシートフォームの便利さを、4つの観点で紹介していきます。
フォームを手早く作成できる
データシートフォームを使う一番のメリットは、フォームの作成にかかる時間がほどんどかからないということです。
帳票形式フォームの場合は、テキストボックスの文字が途中で切れないよう列幅を調整するなど、レイアウトの微調整にかける時間がかかります。
一方、データシートフォームは10秒程度で完成できるのでとても手軽です。
フォームを完成させるための調整を行わなくても、そのまま実務で使える状態まで仕上がっています。
仮に文字が途中で切れた場合、ユーザー側でも幅を調整することが可能です。
![データシートフォームは幅を調整できる](https://sys-daddy.com/wp-content/uploads/2023/05/merit_of_datasheet_form_02_01.jpg)
テーブルやクエリと同じ使用感で操作できる
データシートフォームは、テーブルやクエリと同じ感覚で使えるのも便利です。
Accessの帳票フォームはレコードごとにボタンや画像も配置できて、作り込むほど使いやすい画面に仕上げられます。
一方、データシートフォームは帳票フォームと比べ作り込む余地は持ちませんが、テーブルやクエリでも使えるフィルタ機能などが標準装備されています。
![フィルタが使える](https://sys-daddy.com/wp-content/uploads/2023/05/merit_of_datasheet_form_01_01.jpg)
Runtime版Accessでも使える
テーブルやクエリは無料版のAccessアプリ(Runtime版)で閲覧することができません。
Runtime版Accessで閲覧できるのはフォームとレポートのみです。
テーブルやクエリの同じようなデータシート画面も、データシートフォームを使えばRuntime版Accessでも見られるのはとても大きなメリットです。
つまり、開発用に正規品のAccessを1台だけ購入し、ユーザー側ではRuntime版Accessを使うという、コストを最低限まで抑えたシステム運用が可能です。
コンボボックスが使える
データシートフォームで使えるのはテキストボックスだけではありません。
実はコンボボックスも使えます。
![コンボボックスも使える](https://sys-daddy.com/wp-content/uploads/2023/05/merit_of_datasheet_form_03_01.jpg)
コンボボックスの『 v 』をクリックすれば、複数の項目をプルダウンで選択できます。
![プルダウンで選択可](https://sys-daddy.com/wp-content/uploads/2023/05/merit_of_datasheet_form_04_01.jpg)
テキストボックスとコンボボックスの切替はデザインビューで可能です。
「コントロールの種類の変更」をクリックし、コンボボックスを選ぶだけで切替えが完了します。
![コンボボックスを選択](https://sys-daddy.com/wp-content/uploads/2023/05/merit_of_datasheet_form_05_01.jpg)
一方、チェックボックスはデータシートフォームでは表示できません。
チェックボックスを表示したい場合は、帳票形式のフォームを作り込む必要があります。
データシートフォームを使うときに覚えておきたいプロパティ
ここからでは、データシートフォームでよく使うプロパティについて触れておきます。
まずはプロパティシートを表示させる方法を覚えておきましょう。
データシートフォームのデザインビューを表示させます。
![デザインビューに切り替える](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_01_01.jpg)
フォーム内のコントロールを外した部分を右クリックし、「プロパティ」をクリックします。
![プロパティをクリック](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_02_02.jpg)
プロパティシートが表示されました。
![プロパティが表示される](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_03_01.jpg)
プロパティの項目はたくさんありますが、データシートフォームでよく使うものを3種類だけ紹介しておきます。
レコードソース
レコードソースでは、元になるデータ(テーブルやクエリなど)を指定できます。
![クエリを設定](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_04_02.jpg)
テーブルやクエリはもちろん、編集したSQL文やサブクエリも設定できます。
クエリを不要に増やしたく無い方は、こちらの方法がおススメです。
![SQL文も設定できる](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_05_01.jpg)
追加・削除・更新の許可
Accessデータベースを運用するときは、目的次第ではデータベースの知識を持たいないユーザーにも触れてもらうことも起こります。
しかし、不用意にデータが変更されるリスクがあるため、注意が必要です。
Accessのデータシートフォームでは、権限のレベルを調整することで思わぬデータの変更を防ぐことができます。
権限のレベルを調整するために使うのが「追加・削除・更新の許可」です。
![データ編集権限のレベルを調整できる](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_06_01.jpg)
テーブル・クエリには権限レベルを調整できる機能はありません。
そのため、変更リスクを最小限に抑えた状態でデータを表示させたい場合は、権限レベルを調整したデータシートフォームを使うのがおすすめです。
レコードセレクタと移動ボタン
データシートの見た目を変えたいときには、レコードセレクタと移動ボタンの切り替えもよく行います。
![](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_07_02.jpg)
「はい」に設定してあるときは、検索窓やレコード番号が表示されていて機能的です。
しかし、場合によっては、画面がごちゃごちゃしていて見づらいという欠点もあります。
![](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_08_01.jpg)
いいえに設定すると、データシートの下部がスッキリします。
![](https://sys-daddy.com/wp-content/uploads/2023/05/property_of_datasheet_form_09_01.jpg)
一つのフォームに複数のデータシートフォームを貼り付けるときは、デフォルトのままではゴチャゴチャした見づらい画面になってしまいます。
目的に合わせうまく設定を切替え、使いやすいAccessフォームに仕上げましょう。
まとめ
今回は、Accessのデータシートフォームについて解説しました。
Accessのデータシートフォームは、あまり解説書籍でも紹介されない目立たない機能ですが、実はとても便利な機能です。
Accessでシステム開発して運用するためには、コスト面と開発効率の面から使わない手はないと思います。
この記事を通して、Accessのデータシートフォームをより多くの人に知って頂けたらうれしいです。
当ブログでは、Accessアプリの使い方について解説した他の記事もあります。
下にまとめ記事のリンクを入れておきますので、よかったらごらんください。