Windows8 & Office2013 Access2013

Print Friendly, PDF & Email

コンボボックスに重複しないデータを表示する

投稿日:2017年1月7日 更新日:

Accessでコンボボックスを使用して抽出する方法はいくつかありますが、テーブル内の重複しないデータをコンボボックスに表示する方法を紹介します。
下のようなテーブルがあります。[T_担当一覧]テーブルとしています。
テーブル

[会社名]コンボボックスに[会社名]の重複しないリスト一覧が表示されるよう設定します。
コンボボックス

クエリの作成

まず、クエリを作成します。テーブル[T_担当一覧]を表示して、フィールド[会社名]をドラッグします。
queryの作成

クエリプロパティの固有の値から

クエリで右クリックして、ショートカットメニューから[プロパティ]をクリックします。
ショートカットメニュー

クエリプロパティの[固定の値]を[はい]にします。
クエリプロパティ

クエリを実行してみます。会社名の重複しないデータが表示されます。クエリは[Q_会社名]として保存します。
クエリの実行

同じように[部署]も重複しないデータが表示されるクエリを作成します。[Q_部署]として保存します。

SQLビューから

また、このクエリの作り方は、SQLビューを表示して[DISTINCT]を入力してもいいです。クエリプロパティの固有の値を[はい]にするか、SQLビューで入力するか、どちらかを設定してください。
SQLビューは、クエリを右クリックして[SQLビュー]をクリックします。
SQLビューの選択

または、表示ボタンから切り替えます。
表示ボタンから切り替え

SELECTの後に[半角スペース][DISTINCT][半角スペース]を入力します。[DISTINCT]は半角です。
SQLビュー

フォームの作成

クエリの準備ができたら、フォームを作成します。[T_担当一覧]テーブルを元に分割フォームを作成します。
分割フォームの作成

非連結のコンボボックスを2個作成します。
非連結のコンボボックスを作成

コンボボックスの作成

コンボボックスは、ウィザードを使用してもいいですが、テキストボックスを作成した後、右クリックのショートカットメニューから[コントロールの種類の変更]をポイントして[コンボボックス]をクリックしてもいいです。コンボボックスは、[会社名コンボ]と[部署コンボ]という名前を付けます。
コントロールの種類の変更


[会社名コンボ]のプロパティを表示して、値集合ソースに[Q_会社名]を指定します。
値集合ソースに[Q_会社名]を指定

また、[部署コンボ]には、フォームの[会社名]で絞り込んだ値を表示したいので、[Q_部署]クエリを下のように編集します。
クエリの編集

[部署コンボ]の値集合ソースには、[Q_部署]を指定します。
値集合ソースには、[Q_部署]を指定

フォームビューに切り替えて、会社名を選択すると、部署は絞り込んだリストが表示されます。
フォームビューのコンボ

更新後処理

フォームのコンボボックスの設定はできたので、このコンボで抽出できるように設定します。[会社名コンボ]の[更新後処理]で下のように書き込みます。再クエリも忘れないように入力します。[部署]コンボの[更新後処理]では、[会社名]と[部署]の複数条件でフィルタリングします。
更新後処理のイベントプロシージャ

フォームビューに切り替えて、絞り込んだ値のみが表示されることを確認します。
フォームビューで確認

フィルター解除ボタンの設置

[フィルター解除]ボタンも設置するといいかもしれません。ボタンを作成して、クリック時イベントに下のように書くといいです。
Me.FilterOn = False

詳細は、コンボボックスでレコードの抽出のページを参照してください。
フィルター解除ボタン

重複しないデータの個数を求める方法も解説しています。

重複しないデータの個数を求める

Accessのフォームに重複しないデータの個数を表示する方法を紹介します。 下のようにフォームヘッダーのテキストに部署数の重複しない個数を表 ...

続きを見る

コンボボックスの絞り込みについては、以下の記事も参考になると思います。

コンボボックスの絞込み

入力フォームなどで、よく絞込みは使いますね。 たとえば、営業部を選択すると、営業部の人の名前だけを表示、総務部を選択すると、総務部の人の名前 ...

続きを見る

解決できないことは【teratail】に質問してみましょう。

参考Officeのバージョンによって操作が異なる場合があります。以下の記事で、お使いのOfficeのバージョンを確認する方法を解説しています。

Office(Word、Excel、PowerPointなど)のバージョンを確認する方法

Microsoft Officeも時を得て、大きく様変わりしてきました。トラブルを解決しようとするとき、あるいは、何かの操作を探すときなど、 ...

続きを見る

あなたへのおすすめ

関連記事

おすすめグラフに複合グラフを表示するには

Excel2013のおすすめグラフはとても便利です。 複合グラフの作成ならExcel2013の「おすすめグラフ」が便利 複合グラフですが、あ ...

前にコピーしたものを貼りつけたい時はクリップボードを表示

コピーは、直前のものしか貼り付けできないと思っていませんか? そんなことはありません。数回前にコピーしたものでも貼り付けすることができます。 ...

2つのテーブルから数式フィールドを作成

Excelでデータモデルに追加したテーブルを使って数式フィールドを作成する方法です。 作成した3つの表があります。 下は4月の売上表です。 ...

ワンクリックで行や列の挿入

Word2013では、ワンクリックで表の行や列の挿入ができるようになっています。 挿入マーク 列の場合 列を挿入したい位置の列の罫線にマウス ...

前回終了した位置から再開

Word2013で上書きした文書を開くと、右の垂直スクロールバーの横にメッセージが表示されます。Word2013の新機能です。 再開 前回終 ...

-Windows8 & Office2013 Access2013

Copyright © 2001-2017 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2017 AllRights Reserved Powered by AFFINGER4.