• ベストアンサー

Access2007のルックアップフィールドについて

Access2007のルックアップフィールドについて 以下の2点について教えてください。 テーブルにルックアップフィールドを作成したあと、 (1)自動的に作成されたリレーションシップを削除しても、  ルックアップ列が表示されるのはなぜですか? (2)ルックアップ列の表示を解除したいのですが、どうすればいいですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.1

> (2)ルックアップ列の表示を解除したい 1)Accessの画面左端に表示される『ナビゲーション ウィンドウ』で、  当該テーブルの右クリックメニュー内の「デザイン ビュー(D)」を  クリックするなどして、デザインビューを開く 2)ルックアップ列を設定したフィールドを選択 3)左下方(ナビゲーション ウィンドウよりは右)に表示される領域で  『ルックアップ』タブを選択 4)一番上に『表示コントロール』の設定項目があるので、そこの  値を「テキストボックス」に設定  (→それより下の項目は全て非表示化(テーブル保存後は削除)) 5)テーブルを保存して閉じる ・・・以上で、当該フィールドはテキストボックスでの表示になり、 同フィールドに保存された数値が表示されるようになります。 > リレーションシップを削除しても、ルックアップ列が表示されるのは > なぜですか? 記録した数値に対応したテキストを表示させるだけなら、実は上記の 『ルックアップ』タブに表示される各項目の幾つかを設定するだけで 可能で、リレーションシップの設定自体は必須ではありません。 ただ、適切なリレーションシップを設定することで、  ・未登録の項目を勝手に入力されるのを防いだり(=参照整合性)  ・無用化したレコード(ルックアップで表示される選択項目)が発生   した場合に、それを削除するだけで、関連する全てのレコードを   一括で削除したり(=連鎖削除) といったことが可能になるため、同ウィザードではそれらの設定を同時に 行うように設計された、ということだと思います。

morning1122
質問者

お礼

そういうことなんですね。 とてもわかりやすかったです。 ありがとうございました。

関連するQ&A

  • Accessのルックアップフィールドについての質問

    ACCESSのルックアップフィールドについての質問なのですが。 つい最近ACCESSを学習し始めた者ですが、ルックアップウィザードを使って作成したルックアップフィールドを解除したいのですがどうやったらいいのかわからないので教えて欲しいのです。 よろしくお願いします。

  • アクセス2000のルックアップ設定後のリレーションシップ

    アクセス2000のルックアップを設定後のリレーションシップが自動で作成されることは理解しています。テーブル4つの内1つ(データの流れ的に最後に相当)に設定しました。リレーションシップ線が4つできてしまい、テーブル名がテーブル名に1、2、3と増えてしまいました。邪魔なのでリレーションシップから「テーブルを表示しない」を押し消しても作業してからリレーションシップを確認すると再度表示されてしまいます。また解除(テーブルをデザインモードにして、標準横のルックアップタブを押し、表示コントロールをテキストにする)をしてもリレーションシップの線が消えません。なにか操作方法がおかしいのでしょうか?機会の誤動作でしょうか?

  • Access 2重のルックアップフィールドで、ID番号ではなく、名称を

    Access 2重のルックアップフィールドで、ID番号ではなく、名称を表示したい。 Access 2010を最近昨日から始めました。データベースの正規化がうまくないかもしれませんが、以下の現象で困っています。 ・メーカーテーブル:メーカーID/メーカー名 ・部品テーブル:部品ID/メーカー名:メーカーテーブルよりルックアップフィールド(メーカーテーブルのIDとリレーション) ・在庫テーブル:在庫ID/部品名:部品テーブルよりルックアップフィールド(部品テーブルの部品IDとリレーション) 上記のテーブル構成だとします。 部品テーブルでは、ルックアップフィールドで、”メーカー名”が表示されています。これは問題ありません。 次に在庫テーブルで、部品をルックアップテーブルで選ぼうとすると、メーカー名が文字列で表示されてほしいところが、メーカーIDの数値がでてしまいます。部品テーブルのメーカー名が”数値型”で管理されていることが原因だと思いますが、ここをメーカーIDではなく、メーカー名を出すことはできますでしょうか?

  • Access2007でルックアップのリストに数字が出る

    Access2007でルックアップの設定を行うと、リストに数字が出てきてしまいます。↓のような場合どのようにしたら、文字列のリストを作れますか? テーブル1: 主キー フィールドA 01   収入 02   支出 テーブル2: 主キー フィールドA(テーブル1のルックアップ) フィールドB 01   収入                 給与 02   収入                 その他 03   支出                 光熱費 04   支出                 食費 テーブル3: 年月日   フィールドB(テーブル2のルックアップ) H21/05/01 『ここのルックアップ列をテーブル2のフィールドAとフィールドBを選択するとフィールドAの値が01、02・・・と表示されてしまう。』 両方のフィールドのルックアップを文字列で表示するにはどうしたらいいですか? ※上記解決方法が困難な場合はテーブル3に於いて、テーブル1のルックアップの値を指定してから、その値に対応するテーブル2のレコードを選択する方法でもいいです。 できれは両方知りたいです。 宜しくお願い致します。

  • Access2000でのルックアップ

    Access2000を使用しております ルックアップ列を使用したいと思います ルックアップのテーブルを作成します そのテーブルで (     )が必要です みたいなものを作りたいのです この(    )に文字を入力するすべはないでしょうか? (    )はテキスト型でよいのですが

  • アクセスのテーブルでのルックアップフィールド表示

     いつもお世話になっております。  ACCESS2016を使用しています。  お聞きしたいのは、条件によってテーブルのルックアップフィールドに表示されるデータを変えたいのですが、その方法が分かりません。  フォームでのやり方は分かりますが、テーブルで表示させたいと思っています。  例えば、下記のようなテーブルがあるとします。 [入力用テーブル名:T_元号別担当者] 元号フィールド、担当者フィールド 平成      a 平成      b 令和      c 令和      d [ルックアップ用テーブル名:T_平成担当者] 担当者フィールド a b [ルックアップ用テーブル名:T_令和担当者] 担当者フィールド c d  イメージは、元号フィールドが平成の場合、担当者フィールドにT_平成担当者を、 元号フィールドが令和の場合、担当者フィールドにT_令和担当者をルックアップとして 表示させたいと考えています。  このやり方をどうぞご教示お願いいたします。

  • ルックアップフィールドについて

    Accessをデータベースにして練習中です。 テーブルが複数あり、デザイナで基本フォームを作ってあります。 参考書にルックアップフィールドの作成の仕方が載っていたのですが わからなくなってしまったのでどなたか教えてください。 下のコードを実行すると、ルックアップフィールドが空白になってしまいます。 データセット名:業務DataSet 登録社員テーブル:社員ID、氏名、住所、電話の4列 成績テーブル:社員ID、成果、残業時間の3列 成績テーブルに対応したフォームをデザイナで作成。 社員IDは「社員IDComboBox」、ルックアップフィールドはツールボックスから作り、「氏名TextBox」にしました。  ルックアップフィールドのTextBoxに社員IDに対応した氏名を表示したいと思っています。   Private Sub 社員IDComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 社員IDComboBox.SelectedIndexChanged If 社員IDComboBox.Text = "" Then Exit Sub      End If Dim dr As 業務DataSet._登録社員Row dr = 業務DataSet._登録社員.FindBy社員ID(CType(社員IDComboBox.SelectedText, Integer)) If dr Is Nothing Then 氏名TextBox.Text = "" Else 氏名TextBox.Text = dr.氏名 End If End Sub 色々やっていたら何がおかしいのかわからなくなってしまいました。 すみませんが教えてください。 それと、ComboBoxに登録社員テーブルの社員IDの一覧を表示しようと思ったらどのようにすればよいのですか?

  • Access2003 テーブル内の列を削除が出来ない

    Access2003 テーブル内の列を削除が出来ない いつもお世話になっております。 リレーションシップを設定していないのに、テーブル内の列を削除しようとすると 『このフィールドにはリレーションシップが設定されています・・・ リレーションシップウィンドウで関連するリレーションシップを 削除する必要があります』と表示されて列の削除が出来ません。 そこでリレーションシップ ウィンドウを開いてみますが リレーションシップ ウィンドウには何も表示されておりません。 この場合どのようにして列を削除すれば 良いか教えていただけませんでしょうか? 非常に困っております。よろしくお願いいたします。

  • アクセスのルックアップフィールドでルックアップリストを変えても既入力データが変わらないでほしいのですが

    アクセスでルックアップフィールドを使って商品型番を簡単に選択して入力したいのです。 商品型番は通常6種類程度と少ないのですが、時々型番が変わるのでルックアップリストを修正すると既入力データも変わってしまうので困っています。 既入力データ(ルックアップフィールド列データ)を変えずに行う方法はないものでしょうか? 商品型番は6種類と少ないので古いものもリストに残せばいいという考えもありますが、不要な型番が蓄積したリストというのも見にくいですし。 ルックアップフィールド以外の方法で回避する方法でもかまいませんが、VBAなどはまだかじってませんので、よろしくお願いします。

  • MS accessでのルックアップ機能と並び替え

    access2007です。 一見実現できそうな処理なのですが、どうしてもその方法がわかりませんでした。 お手数ですが、おわかりの方がいらっしゃいましたらご回答よろしくお願いいたします。 テーブルをデザインビューで開いたときのフィールドプロパティでルックアップを設定して別なテーブルを参照しています。このとき、ルックアップによる格納値ではなく、表示値やルックアップテーブル中のその他のフィールドの入力値にしたがって並び替えを行いたいのです。 簡略のため、以下の例で説明させてください。 今ここに次の二つのテーブルがあるとします。  1.お客様テーブル  2.県名テーブル それぞれが持つフィールドは  1.お客様テーブル:[お客様コード]、[氏名]、[県名]  2.県名テーブル  :[県コード]、[県名]、[県名カナ] 「県名テーブル」の[県名]フィールドには順不同に47都道府県を入力していたとします。 さらに「県名テーブル」の[県コード]フィールドはオートナンバー型で47番まで番号がついています。 さて、「お客様テーブル」をデザインビューで開き、[県名]フィールドをコンボボックスに変更しルックアップを設定します。 設定は次のようにします。 値集合タイプ テーブル/クエリ 値集合ソース 県名テーブル 連結列1 列数2 列幅0cm;3cm これで「お客様テーブル」の[県名]フィールドへの格納値は[県名コード]の数字になり、表示値は[県名]フィールドの文字列になると思います。 ここで、「お客様テーブル」で並び替えをするときに、この格納値の数字ではなく、[県名カナ]にてカナ順にて並び替えをしたいのです。 ※コンボボックスのドロップダウンリストの中身を並び替えたいのではなく、「お客様テーブル」のデータの並び替えの優先キーとして、[県名カナ]を使用したいのです。 当然[県名カナ]による並び替えの順序を考慮して[県名コード]をつければ、格納値の数値で並び替えても希望の並びになるのはわかります。しかしここでいう[県名コード]がただのオートナンバー型のフィールドだとすると、これとは別に並び替えのキーとなるフィールドを作成してそれをもとに並び替えを行うという処理は、私以外でもニーズがあってもよいのではと考えたのです。 または単に私が見逃している機能があるのかもしれません。 何か解決策がありましたらよろしくお願いいたします。