-PR-
解決
済み

MS Access2000のフォームの表示方法について教えてください。

  • すぐに回答を!
  • 質問No.93045
  • 閲覧数54
  • ありがとう数2
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 67% (38/56)

図1、データが5000件位の製品テーブルがあります。
図1項目名の番号に対する名称等は別のテーブルにあります。

図1(テーブル)
----------------------------------------------------------
 製品番号 | 予算番号 | 新製品番号 | ・・・ | ・・・
----------------------------------------------------------
 3310001 | 3230002  |  ・・・   | ・・・ | ・・・
 3310001 | 3230002  |  ・・・   | ・・・ | ・・・
 3310010 | 3230015 |  ・・・   | ・・・ | ・・・
・      ・      
   ・      ・

テーブル図1を使ってクエリ又はフォームで、「材質番号」という項目を追加して図2のような感じでフォームを作成したいのです。
材質番号という項目はベースとなる図1テープル、図1クエリには無く、別テーブルになっています。

図2(フォーム)
---------------------------------------
|製品番号|(製品名称テーブルより製品名) |
---------------------------------------

---------------------------------------
|予算番号|(予算名称テーブルより予算名称)|
---------------------------------------

----------------------------------------
|材質番号|(材質名称テーブルより材質名称)|
----------------------------------------

なお、作成するフォームは各番号と名称を使用してのデータ検索のみで、入力はしません。

ちょっと質問がややこしくなってしまいましたので、簡単にやりたいことを言いますと、製品フォームにまったく関係の無い材質テーブルの材質番号を、製品フォームに表示させて、検索、閲覧したいということなのです。

Accessもですが、VB&VBA等初心者ですので、できれば使用しない方法がありましたらよろしくお願いいたします。
通報する
  • 回答数5
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル9

ベストアンサー率 55% (41/74)

希望されているような表示を行いたい場合、次のような条件が必要になります。

・「材質番号」の取得元テーブルに「製品番号」もしくは「予算番号」と同じルー
 ルのデータを収納しているフィールドがあり、データ型が図1テーブルの前述フ
 ィールドと一致している。
・上記を満たした上で「製品番号」もしくは「予算番号」(とそれに相応するフィ
 ールド)は、図1テーブルと「材質番号」のあるテーブル間で同じ製品に関して
 同じ番号を使用している。

この条件を満たした上で、下記の方法でクエリとフォームを作成します。

1.図1テーブルを元に、「選択クエリ」を作成する。
  (フィールドは「製品番号」および「予算番号」だけを選択)

2.作成したクエリをデザインモードで開き、メニューの「クエリー(Q)」-「テー
  ブルの表示(T)」から「材質番号」のフィールドを含むテーブルを表示させる

3.図1テーブルのフィールドリストのボックスから、「製品番号」もしくは「予
  算番号」のうちの双方にあるほうのフィールドを手順「2.」で開いたテーブ
  ルのフィールドリスト内の同名フィールド(かそれに順ずるもの)のところま
  でドラッグアンドドロップする

4.「3.」の手順で双方のフィールドリスト間に線が表れたら、クエリのフィー
  ルドリストにフィールド:材質番号、テーブル:「2.」で開いたテーブル名
  のフィールドを追加する

5.クエリを保存して閉じ、ここまでの手順で作成したクエリを元にしたフォーム
  を作成する

以上です。すこし難しいかもしれませんが、上記は「リレーションシップ」という機能を利用する方法です。条件が合うようでしたら利用してみてください。
お礼コメント
tokin

お礼率 67% (38/56)

Sarukanさん、お返事ありがとうございます。
手順を参照しながらやってみたいと思います。
投稿日時 - 2001-06-20 17:36:01
-PR-
-PR-

その他の回答 (全4件)

  • 回答No.1
レベル12

ベストアンサー率 33% (196/589)

テーブル図1の中の項目と「材質番号」と関連がある項目はありますか? どうゆう条件で「材質番号」と関連付けているのですか? 例えば「材質番号」の入っているテーブルの中には「製品番号」が入っていると言うことです。(「材質番号」のテーブルも教えて貰わないと分からない気がします) ...続きを読む
テーブル図1の中の項目と「材質番号」と関連がある項目はありますか?
どうゆう条件で「材質番号」と関連付けているのですか?
例えば「材質番号」の入っているテーブルの中には「製品番号」が入っていると言うことです。(「材質番号」のテーブルも教えて貰わないと分からない気がします)
補足コメント
tokin

お礼率 67% (38/56)

早速のお返事ありがとうございます。
説明が足りなくてすみません。
図1と材質テーブル(材質番号)とはまったく関連づいておりません。

材質テーブルの中身ですが

|材質番号|材質名称|材質カナ|製造場所|・・・
8000001|  金  |キン  | 埼玉 |・・・
8000002| 鉄   |テツ  | 千葉 |・・・
・    ・    ・    ・
   ・    ・    ・    ・

といったデータが入っております。
やはり関連性がないと無理でしょうか、たとえば関連する項目を作ってしまうというようなことも出来るのでしょうか?
おかしな質問をしてましたらすみません、よろしくお願いいたします。
投稿日時 - 2001-06-20 17:23:51


  • 回答No.3
レベル9

ベストアンサー率 55% (41/74)

補足です。 もし#2で書き込ませていただいた条件を満たしていない場合、図1のテーブルに材質番号フィールドそのまま作成して手入力sるのが一番早い方法となってしまいますが、もし表記されていない右のほうのフィールドに材質名等のフィールドがある場合でも#2の方法は使用可能です。 どちらにせよ、材質の一覧テーブルガある場合、図1のテーブルに材質名などのフィールドを作成しておくことをお勧めいたします。おそらくその ...続きを読む
補足です。
もし#2で書き込ませていただいた条件を満たしていない場合、図1のテーブルに材質番号フィールドそのまま作成して手入力sるのが一番早い方法となってしまいますが、もし表記されていない右のほうのフィールドに材質名等のフィールドがある場合でも#2の方法は使用可能です。
どちらにせよ、材質の一覧テーブルガある場合、図1のテーブルに材質名などのフィールドを作成しておくことをお勧めいたします。おそらくその方が何かと便利だと思いますよ。
補足コメント
tokin

お礼率 67% (38/56)

補足ありがとうございます。
図1のテーブルは毎日書き変わってしまいますので、クエリに材質番号フィールドを作成しようと思ったのですが、「パラメータの入力」と画面が開いて何かを入力するように言われるのですが、フィールドの追加は項目名を入力しただけではいけないのでしょうか?
たびたびすみませんが、よろしくお願いいたします。
投稿日時 - 2001-06-20 17:50:11
  • 回答No.4
レベル12

ベストアンサー率 33% (196/589)

確認したい事があります。 一つの製品(「製品番号」)に対して、日によっては違う「材質番号」が割り当てられることがあると言うことですか? >やはり関連性がないと無理でしょうか 図2(フォーム) では、一緒のフォームに「製品番号」と「材質番号」を表示しています。 と言うことは、このフォームで表示する段階では何らかの関連性も持っていると考えられます。 多分、フォームを表示しているクエリ ...続きを読む
確認したい事があります。

一つの製品(「製品番号」)に対して、日によっては違う「材質番号」が割り当てられることがあると言うことですか?

>やはり関連性がないと無理でしょうか

図2(フォーム) では、一緒のフォームに「製品番号」と「材質番号」を表示しています。
と言うことは、このフォームで表示する段階では何らかの関連性も持っていると考えられます。

多分、フォームを表示しているクエリー(今は明確になっていませんが)が日時のテーブルを現していて、その中では「製品番号」と「材質番号」の関連があるはずです。
補足コメント
tokin

お礼率 67% (38/56)

補足要求ありがとうございます。
また、遅くなりまして申し訳ありません。

>一つの製品(「製品番号」)に対して、日によっては違う「材質番号」が割り当てられることがあると言うことですか?

いいえ、そうではなく毎日数件の新しいデータが増えていくと言うことです。

>図2(フォーム) では、一緒のフォームに「製品番号」と「材質番号」を表示しています。
と言うことは、このフォームで表示する段階では何らかの関連性も持っていると考えられます。

すみません、図2は私がこうしたいと言う理想で書いたものなので、実際は材質番号はフォームに表示されておりません。
投稿日時 - 2001-06-20 23:43:18
  • 回答No.5
レベル9

ベストアンサー率 55% (41/74)

#2、#3で回答させていただいたSarukanです。 >クエリに材質番号フィールドを作成しようと思ったのですが、「パラメータの入 >力」と画面が開いて何かを入力するように言われるのですが、フィールドの追加 >は項目名を入力しただけではいけないのでしょうか? その通りです。 条件にも書きましたが、リレーションシップを作成するためには双方のテーブルの関連付けるフィールドに1対1、1対多、多 ...続きを読む
#2、#3で回答させていただいたSarukanです。

>クエリに材質番号フィールドを作成しようと思ったのですが、「パラメータの入
>力」と画面が開いて何かを入力するように言われるのですが、フィールドの追加
>は項目名を入力しただけではいけないのでしょうか?

その通りです。
条件にも書きましたが、リレーションシップを作成するためには双方のテーブルの関連付けるフィールドに1対1、1対多、多対多のいずれかのかたちで同じデータが保存されている事が絶対条件になります。そのため、「図1テーブルは毎日書き換わってしまう」という条件のもとでは材質テーブルのほうに製品番号フィールドを作成し、地道にその製品番号がどの材質番号の材質を使用しているか…といったレコードを製品番号分作製するというのが一番確実な方法となります。
おそらくは気の遠くなるような作業とも思われるかもしれませんが、Excelなどで製品番号一覧をつくり、そこに材質番号を付帯させた表を作成、それをAccessにインポートさせて材質テーブルを再作成すればすこしは楽になると思います。
参考までに解決方法のひとつとしてご覧いただければ幸いです。
お礼コメント
tokin

お礼率 67% (38/56)

ご回答ありがとうございます。
また、お返事が遅くなり申し訳ありません。
時間はかかりそうですが私にもできそうですので、がんばってやってみます。
大変勉強になります、本当にありがとうございます。
投稿日時 - 2001-06-20 23:59:45
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ