複数の値を格納するルックアップ列を追加または変更する

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

必要な値が別のテーブルに格納されていることがあります。たとえば、案件履歴データベースがあり、案件を割り当てた従業員と請負業者を追跡するとします。この従業員と請負業者に関する情報は、[連絡先] テーブルで追跡されます。コンボ ボックスまたはリスト ボックス コントロールに名前を表示するために、複数値を持つルックアップ列を作成できます。案件を割り当てるユーザーを選択すると、その担当者 ID の値が案件レコードに格納されます。

この記事では、複数値を持つルックアップ列の概要、およびルックアップ列をテーブルに追加する方法について説明します。既存の列を、複数値を持つルックアップ列に変換する方法についても説明します。

方法ルックアップ プログラムを使用して、テーブル内の値を参照してください参照記事DLookup 関数を知りたいかどうか。複数値を持つフィールドの詳細については、複数値を持つフィールドの概要」を参照してください。

以前のバージョンの Access を含むほとんどのデータベース管理システムでは、各フィールドに単一の値しか保存できません。Microsoft Office Access 2007 からは、案件を割り当てた担当者のリストなど、複数の値を格納するフィールドを作成できるようになりました。複数値を持つフィールドは、Office Access 2007 を使用して Windows SharePoint Services 3.0 リストに保存された情報を処理する場合、およびそのリストに Windows SharePoint Services 3.0 で使用可能なフィールドの型のいずれかを使用するフィールドが含まれている場合など、特定の状況に適しています。

この記事の内容

複数値を持つ参照列とは何ですか。

データシート ビューで複数値を持つ参照列を作成します。

[フィールド リスト] ウィンドウを使用して複数値を持つ参照列を作成します。

デザイン ビューで複数値を持つ参照列を作成します。

ルックアップ ウィザードを使用して複数値を持つ参照列を作成するには

連結値と複数値を持つ参照列の表示値を理解します。

ルックアップ フィールドのプロパティの概要

複数値を持つフィールドのルックアップ列のデザインを変更します。

複数値を持つルックアップ列とは

複数値を持つルックアップ列は、別のテーブルまたは値リストから値が取得されるテーブルのフィールドです。複数値を持つルックアップ列を使用すると、コンボ ボックスまたはリスト ボックスに選択肢のリストを表示できます。選択肢は、テーブルまたはクエリから取得されるか、または自分で入力した値で構成されます。ルックアップ列は複数値を持つため、リストの複数のアイテムを選択できます。

複数値を持つルックアップ列の作成は、フィールドのルックアップ フィールドのプロパティを設定して手動で行うか、ルックアップ ウィザードを使用して自動的に行います。複数値を持つルックアップ列の作成には、できる限りルックアップ ウィザードを使用してください。ルックアップ ウィザードを使用すると、手順が簡単で、適切なフィールド プロパティの設定と適切なテーブル リレーションシップの作成が自動的に行われます。

複数値を持つフィールドのコンボ ボックス

複数値を持つルックアップ列は、データシート ビューとデザイン ビューのどちらでも作成できます。

ページの先頭へ

データシート ビューで複数値を持つルックアップ列を作成する

テーブルを開いたとき、既定では、データシート ビューでテーブルが表示されます。複数値を持つルックアップ列を追加するには、[データシート] タブの [フィールドと列] で [ルックアップ列] をクリックします。これにより、ルックアップ ウィザードが起動し、手順に従ってルックアップ列を作成できます。

  1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

  2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

  3. ナビゲーション ウィンドウで、ルックアップ列を作成するテーブルをダブルクリックし、テーブルをデータシート ビューで開きます。

  4. [データシート] タブの [フィールドと列] で [ルックアップ列] をクリックします。

    Access リボンのイメージ

    ルックアップ ウィザードが起動します。

    テーブル/クエリまたは値リストを選択するルックアップ ウィザードのページ

  5. ルックアップ ウィザードの最初のページで、ルックアップ列がテーブルまたはクエリの値に基づくのか、入力した値リストに基づくかのを決める必要があります。

    最も頻繁に使用される複数の値を許容するルックアップ列は、関連するテーブルまたはクエリから検索された値を表示するものです。

  6. ルックアップ ウィザードを完了する方法については、ルックアップ ウィザードを使用する」を参照してください。

ページの先頭へ

[フィールド リスト] ウィンドウを使用して複数値を持つルックアップ列を作成する

複数のテーブルがあるデータベースを使用している場合は、[フィールド リスト] ウィンドウからフィールドをドラッグして、複数値を持つルックアップ フィールドの作成を開始できます。[フィールド リスト] ウィンドウに表示されるフィールドは、データベースの他のテーブルで使用できます。この方法で複数値を持つルックアップ列を作成した場合、ルックアップ ウィザードが自動的に起動され、ドラッグしたフィールドが、ルックアップ列のフィールドの 1 つに設定されます。

  1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

  2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

  3. ナビゲーション ウィンドウで、ルックアップ列を作成するテーブルをダブルクリックし、テーブルをデータシート ビューで開きます。

  4. [データシート] タブの [フィールドと列] グループで [既存のフィールドの追加] をクリックします。

    Access リボンのイメージ

    [フィールド リスト] ウィンドウが表示されます。

  5. テーブルの横のプラス記号 (+) をクリックして、そのテーブルのフィールド リストを表示します。

  6. 目的のフィールドを [フィールド リスト] ウィンドウからデータシート ビュー内のテーブルにドラッグします。

  7. 挿入位置が表示されたら、フィールドをそこにドロップします。

    [フィールド リスト] ウィンドウからフィールドを挿入するための挿入行

    ルックアップ ウィザードが起動します。

  8. ルックアップ ウィザードを完了する方法については、ルックアップ ウィザードを使用する」を参照してください。

ページの先頭へ

デザイン ビューで複数値を持つルックアップ列を作成する

ルックアップ列は、データシート ビューで作成する他に、デザイン ビューでも作成できます。デザイン ビューで操作するときは、データシート ビューで使用するのと同じルックアップ ウィザードを使用してルックアップ列を作成します。ただし、デザイン ビューの場合は、フィールドのすべてのプロパティに完全にアクセスできるので、これらのプロパティを直接編集できます。

  1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

  2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

  3. ナビゲーション ウィンドウで、複数値を持つルックアップ列を追加するテーブルをマウスの右ボタンでクリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  4. テーブル デザイン グリッドで、最初の空の行を探します。

  5. 最初の空の行で、[フィールド名] 列をクリックし、複数値を持つルックアップ列のフィールド名を入力します。

  6. その行の [データ型] 列、矢印の順にクリックし、ドロップダウン リストの [ルックアップ ウィザード] を選びます。

    ルックアップ ウィザードが起動します。

    テーブル/クエリまたは値リストを選択するルックアップ ウィザードのページ

  7. ルックアップ ウィザードの最初のページで、ルックアップ列をテーブルまたはクエリの値に基づいて作成するか、入力した値リストに基づいて作成するかを指定します。

    よくあるルックアップ列の種類としては、関連するテーブルまたはクエリからの参照値を表示するものがあります。

  8. ルックアップ ウィザードを完了する方法については、ルックアップ ウィザードを使用する」を参照してください。

[完了] をクリックすると、ルックアップ列の作成が完了し、ルックアップ ウィザードで選択した内容に基づいてフィールド プロパティが設定されます。デザイン ビューの下部にあるウィンドウの [フィールド プロパティ] に、フィールド プロパティが表示されます。ルックアップ列に固有に適用されるプロパティを参照するには、[ルックアップ] タブをクリックします。

ページの先頭へ

ルックアップ ウィザードを使用して複数値を持つルックアップ列を作成する

ルックアップ ウィザードが起動されるのは、データシート ビューでルックアップ列を作成するとき、データシート ビューで開かれているテーブルに [フィールド リスト] ウィンドウからフィールドをドラッグしたとき、およびデザイン ビューで [データ型] 列の [ルックアップ ウィザード] をクリックしたときです。ウィザードでは、ルックアップ列を作成するための手順が順番に示され、選択内容に応じて適切なフィールド プロパティが自動的に設定されます。また、必要に応じて、ルックアップ列をサポートするためのテーブルのリレーションシップとインデックスも作成されます。

ウィザードの最初のページで、ルックアップ列をテーブルまたはクエリに基づいて設定するか、入力した値に基づいて設定するかを決める必要があります。多くの場合、データベースが適切に設計され、主題ごとのテーブルに分割されている場合は、ルックアップ列のデータ ソースとしてテーブルまたはクエリを選択してください。

  • テーブルまたはクエリに基づいて複数の値を許容するルックアップを作成する

    1. ルックアップ ウィザードで、[テーブルまたはクエリの値をルックアップ値に表示する] をクリックし、[次へ] をクリックします。

    2. ボックスの一覧で、目的のテーブルまたはクエリをクリックし、[次へ] をクリックします。

    3. [選択可能なフィールド] で、ルックアップ対象のフィールドをクリックします。

    4. クリックしたフィールドを [選択したフィールド] ボックスの一覧に移動するには、[>] をクリックします。すべてのフィールドを [選択したフィールド] ボックスの一覧に移動するには、[>>] をクリックし、[次へ] をクリックします。

    5. さらに、ルックアップ項目の並べ替えに使用するフィールドを 4 個まで選ぶことができ、選んだら [次へ] をクリックします。

    6. 必要に応じてルックアップ フィールド内の列の幅を調整し、[次へ] をクリックします。

    7. [このルックアップ用に複数の値を保存しますか?] の [複数の値を許可する] チェック ボックスをオンにします。

      注: 複数値を格納するには、このチェック ボックスをオンにする必要があります。

    8. [完了] をクリックします。

      [完了] をクリックすると、ルックアップ列の作成が完了し、ルックアップ ウィザードで選択した内容に基づいてフィールド プロパティが設定されます。

    9. テーブルを保存するには、Microsoft Office ボタン Office ボタンの画像 ] をクリックし、[保存] をクリックします。

      キーボード ショートカット ctrl キーを押しながら S

  • 入力した値に基づいて複数の値を許容するルックアップを作成する

    1. ルックアップ ウィザードで、[表示する値をここで指定する] をクリックし、[次へ] をクリックします。

    2. 列の数を入力します。次に、それぞれの値を入力します。次の列または行に移動して、TAB キーを押します。

    3. 値の入力が完了したら、[次へ] をクリックします。

    4. 手順 2 では、複数の列を指定した場合は、それぞれの値を一意に識別に使用する列を選択してください。[利用可能なフィールド] ボックスを使用して、それぞれの値を一意に識別する列をダブルクリックします。

      注: 手順 2 で複数の列を指定しなかった場合、この手順は表示されません。

    5. ルックアップ ウィザードで、作成したルックアップ列のラベルを入力します。

    6. [このルックアップ用に複数の値を保存しますか?] で、[複数の値を許可する] チェック ボックスをオンにします。

      注: 複数値を格納するには、このチェック ボックスをオンにする必要があります。

    7. [完了] をクリックします。

      [完了] をクリックすると、ルックアップ列の作成が完了し、ルックアップ ウィザードで選択した内容に基づいてフィールド プロパティが設定されます。

    8. テーブルを保存するには、Microsoft Office ボタン Office ボタンの画像 ] をクリックし、[保存] をクリックします。

      キーボード ショートカット ctrl キーを押しながら S

  • 複数値を持つフィールドを作成してからデータシート ビューでテーブルを表示すると、チェック ボックス付きドロップダウン リストとして表示されます。

ページの先頭へ

複数値を持つルックアップ列の連結値と表示値について理解する

Access はこれまでの多くのバージョンで単一の値を持つルックアップ フィールドをサポートしていました。複数値を持つルックアップ フィールドは、Office Access 2007 の新機能です。ルックアップ フィールドの目的は、ID などの番号 (またはその他の外部キーの値) の表示を名前などの意味のある内容に置き換えることにあります。たとえば、担当者 ID 番号を表示する代わりに、担当者名を表示できます。この場合の担当者 ID 番号は連結値です。担当者 ID 番号を使用してソース テーブルやクエリが自動的に検索され、担当者名に置き換えられます。この担当者名は表示値です。

表示値と連結値を持つ単一値のルックアップ フィールドと同様に、複数値を持つルックアップ フィールドも、ユーザー インターフェイスに表示する表示値と、テーブルに格納する連結値を持っています。複数値を持つフィールドの各エントリについて、その連結値に基づき表示値が検索されます。

これは、複数値を持つフィールドに格納されている連結値ではなく検索された表示値が表示される場合があることを示します。たとえば、Contacts Extended という名前のクエリから取得する一連の従業員 ID の値が、"担当者" という名前のフィールドに格納されます。これらの従業員 ID の値は連結値です。一方、"担当者" はルックアップ フィールドであるため、クエリ結果の一連の検索された値として担当者名が表示されます。この担当者名が表示値です。

表示値のデータシートと連結値のデータシート

1. 表示値

2. 連結値

複数値を持つルックアップ フィールドの表示値とその連結値の違いを理解する必要があります。表示値は、既定でデータシート ビューに自動的に表示されます。しかし、実際にルックアップ フィールドに格納されている値は連結値であり、クエリの抽出条件で使用する値、および他のテーブルとの結合で Access が既定で使用する値も連結値です。

ページの先頭へ

ルックアップ フィールドのプロパティについて

デザイン ビューの下部にあるウィンドウの [フィールド プロパティ] に、ルックアップ フィールドのプロパティが表示されます。ルックアップ列に固有に関連付けられたプロパティを参照するには、[ルックアップ] タブをクリックします。

  1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

  2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

  3. ナビゲーション ウィンドウで、ルックアップ列を追加するテーブルを右クリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  4. フィールド名] 列で、参照列の名前をクリックします。

  5. [フィールド プロパティ] で、[ルックアップ] タブをクリックします。

    ルックアップ プロパティが表示されます。

    複数値を持つルックアップ フィールドのプロパティ

最初のプロパティ (表示 Control) の値を設定する場合は、選択を反映するように使用できるプロパティのリストが変更されます。ルックアップ列の動作を変更するルックアップ フィールドのプロパティを設定することができます。ルックアップ列を作成するのには、ルックアップ ウィザードを使用するときにルックアップ フィールドのプロパティによって設定されたが、ウィザードに注意してください。

ルックアップ フィールドのプロパティ

プロパティ名

目的

DisplayControl/表示コントロール

コントロールの種類を [チェック ボックス]、[テキスト ボックス]、[リスト ボックス]、または [コンボ ボックス] に設定します。ルックアップ列で最もよく使用されるのは、[コンボ ボックス] です。

RowSourceType/値集合タイプ

ルックアップ列の値を別のテーブルまたはクエリの値に基づいて設定するか、指定した値リストを使用するかを指定します。テーブルまたはクエリのフィールドの名前を使用してリストを設定することもできます。

RowSource/値集合ソース

テーブル、クエリ、またはルックアップ列の値を提供する値のリストを指定します。テーブル/クエリ] または [フィールド リストに、[値集合タイプ] プロパティを設定すると、テーブルまたはクエリの名前またはクエリを表す SQL ステートメントをこのプロパティを設定する必要があります。値リスト値集合ソースの種類のプロパティを設定すると、このプロパティはセミコロンで区切って値のリストを格納する必要があります。

BoundColumn/連結列

ルックアップ列に格納される値を提供する値集合ソースの列を指定します。この値の範囲は、1 から値集合ソースの列数です。

注: 格納する値を提供する列は、表示列と同じ列でなくてもかまいません。

ColumnCount/列数

ルックアップ列に表示できる値集合ソースの列数を指定します。表示する列を選択するために、"ColumnWidths/列幅" プロパティに列幅を指定します。

ColumnHeads/列見出し

列見出しを表示するかどうかを指定します。

ColumnWidths/列幅

各列の列幅を入力します。ID 列などの列を表示しない場合は、幅として 0 を指定します。

ListRows/リスト行数

ルックアップ列に表示する行数を指定します。

ListWidth/リスト幅

ルックアップ列に表示するコントロールの幅を指定します。

LimitToList/入力チェック

リストにない値を入力できるようにするかどうかを指定します。

AllowMultipleValues/複数の値の許可

複数の値を持つフィールドをルックアップ列で使用し、複数の値を選択できるようにするかどうかを指定します。

AllowValueListEdits/値リストの編集の許可

値リストに基づくルックアップ列の項目を編集できるかどうかを指定します。このプロパティを [はい] に設定した場合、単一列の値リストに基づくルックアップ フィールドを右クリックすると、[リスト項目の編集] メニュー項目が表示されます。ルックアップ フィールドに複数の列が含まれる場合、このプロパティは無視されます。

ListItemsEditForm/リスト項目編集フォーム

テーブルまたはクエリに基づくルックアップ列のリスト項目を編集するときに使用する既存のフォームの名前を指定します。

ShowOnlyRowSourceValues/値集合ソースの値のみの表示

"AllowMultipleValues/複数の値の許可" が [はい] に設定されている場合、現在の値集合ソースに一致する値のみを表示します。

ルックアップ列の連結値は、"BoundColumn/連結列" プロパティによって決まります。ルックアップ列の表示値は、幅がゼロでない "ColumnWidths/列幅" プロパティによって表される列です。

ページの先頭へ

複数値を持つフィールドに対するルックアップ列のデザインを変更する

複数値を持つルックアップ列のデザインを変更するには、デザイン ビューでルックアップ フィールドのプロパティを編集する必要がありますが、1 つだけ例外があります。ルックアップ列が単一列の値リストに基づいていて、"AllowValueListEdits/値リストの編集の許可" プロパティが [はい] に設定されている場合は、複数値を持つルックアップ列を右クリックし、[リスト項目の編集] をクリックすると、データシート ビューまたはフォーム ビューで値のリストを変更できます。

値リストを基にした複数値を持つルックアップ列の値リストを編集する

リストの値を追加または変更したり、既定値を設定したりできます。

  1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

  2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

  3. ナビゲーション ウィンドウで、複数値フィールドが格納されたテーブルをダブルクリックします。

    テーブルがデータシート ビューで開きます。

  4. 複数値を持つルックアップ列の任意のセルを右クリックします。

  5. [リスト項目の編集] をクリックします。

  6. 値リストに変更を加え、[OK] をクリックします。

値リストに基づく複数値を持つルックアップ列を、テーブルやクエリに基づく複数値を持つルックアップ列に変更する

  1. 最初に、値リストを基にした既存の複数値を持つフィールドを削除します。

    1. Microsoft Office ボタン Office ボタンの画像 をクリックして、[開く] をクリックします。

    2. [ファイルを開く] ダイアログ ボックスで、データベースを選択して開きます。

    3. デザイン ビューでテーブルを開きます。

    4. デザイン グリッドで目的の複数値フィールドを選択します。

      フィールドを選択するには、フィールドの行セレクタをクリックします。

    5. [デザイン] タブの [ツール] グループで、[行の削除] をクリックします。

      [デザイン] タブの [ツール]

      確認メッセージが表示されます。

    6. 確認メッセージが表示されたら、目的のフィールドとそれに含まれるすべてのデータを削除するには、[はい] をクリックします。キャンセルするには、[いいえ] をクリックします。

  2. 複数値を持つフィールドを新しく作成します。

    複数値を持つ新しいフィールドを作成するには、データシート ビューで複数値を持つ参照列を作成する」を参照してください。

複数値を持つルックアップ列のデザインを変更する

複数値を持つ参照列を変更するには、デザイン ビューでテーブルを開き、ルックアップ フィールドのプロパティを変更します。ルックアップ フィールドのプロパティの詳細については、「フィールドのプロパティをルックアップのご紹介」を参照してください。

ページの先頭へ

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×