![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
こんにちは。
今、仕事で家庭用機器の商品の管理をしています。
ACCESSを使って各商品の詳細を入力しています。
オーディオ機器、DVD機器、モニター機器、オプション機器の4種類のテーブルがあり、それぞれに入力用フォームを作成してあります。
質問したいのは、型式の検索用フォームを作成して、検索を実行するとその型式がある入力用フォームを開き、データ(メーカー、値段、大きさなど)を表示させたいということです。
検索フォームで型式を入力
↓
検索
↓
型式が一致する入力用フォームを開き、
データを表示
テーブルやフォームが複数ある場合はどういう風に設定すればいいのでしょうか?
テーブルを1つにまとめた方がやりやすいのでしょうか?
分かりにくければ補足いたしますので、よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
入力用フォームはレコードソースを変えて4つ作成し
検索フォームにて
型式のテキストボックス
機器の種類選択のオプションボックスまたはコンボボックス
検索ボタン
を作成する。
検索ボタンクリックイベントに下記のような設定をする
Private Sub 検索_Click()
On Error GoTo Err_検索_Click
Dim stDocName As String
Dim stLinkCriteria As String
Select Case 機器の種類
Case 1
stDocName = "オーディオ"
Case 2
stDocName = "DVD"
Case 3
stDocName = "モニター"
Case Else
stDocName = "オプション"
End Select
stLinkCriteria = "[ID]=" & "'" & Me![型式] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_検索_Click:
Exit Sub
No.4
- 回答日時:
今までの回答とは少々違うかもしれませんが
登録処理と、検索処理を別々につくる。
1.「マスター」ファイルの作成
機種・メーカー・購入先名
マスターにて検索が確実になります。
例:機種品名マスター
入力時:ホップアップさせる。
マスター以外入力できないようにする。
例:DVD・TV・洗濯機・クーラー・等大分類です。
2.「メインファイル」の作成
1)メインファイル(キーファイル)と詳細ファイルを分ける方法があります。
2)メインフォーム上の項目(例です)
機種、メーカ、商品名、型式、価格、購入日、購入先店名
キーNO(自動発生させる)
3.「詳細ファイル」の作成
1)キーNOにてメインファイルとリンクする。
2)必要フィールドを作成する。
3)1つのテーブルにした方が良いと思います。
4.「機種別表示マスタ」に表示させる項目のファイルをつくる。
メイン登録の機種により詳細ファイルの表示させる項目を
替えるためです。
5.登録処理
1)スタートで、上部に「メインフォーム」下部に「詳細ファイル」を表示させる。
2)上部のメインファイルにて登録してゆく
3)終わった時点で詳細ファイルにメインにて発生した「キーNO」をフィルドにセットし画面に表示させる。
4)詳細の項目:メインの機種により表示させる項目名をかえる。
5)内容を登録してゆく。
6.検索・修正処理
1)フォーム上部に型式を指定する項目をつくり、入力する。
マスターをホップさせれば入力が省け、精度が上がる。
2)メインファイルを検索し、同一データを下部に表示させる。
メインファイルの「キーNO」にて詳細ファイルが自動的に検索できるので表示させる。
3)同時に修正も可能にしておけば修正もできる。
7.一括問い合わせ処理
1)敬作したい項目を上部につくる。
一応は、メインファイルの項目を表示させる。
2)入力された項目でメインファイルを検索し、「キーNO」にて詳細データも表示させる。
こういうやり方もいかがですか。
私は、VBAはあまりとくいではないので、「クエリー」の活用がメインでこれらを「マクロ」にてフォームにて処理するようにしています。
No.3
- 回答日時:
1.型式の検索用フォームを作成してください。
(1)このフォームに型式を入力するためのテキストボックスを張付けます。
(2)コマンドボタンを張付けます
フォームの操作→フォームを開く→フォームを選択(オーディオ機器の入力フォーム)
→特定のレコードを表示するチェック
→検索フォームのテキストボックス名<->入力フォームの型式のフィールド名
→文字列選択→任意の名前(オーディオ機器)
(3)コマンドボタンを張付けます。
DVD機器、モニター機器、オプション機器の4種(2)と同様あと3個作成します。
ご質問の内容のようになるかと思います。
テーブル1つにする方が良いかも知れません、(フイールド項目が同じなら)
より簡単になりそうですコンボボックスのするとか?
ご質問の趣旨と違ってましたらごめんなさい。
No.2
- 回答日時:
検索フォームのイメージが判りませんので、どうも...
仮に、[品種名][型番]というレコード情報が表示されるのであれば、
フォームにコマンドボタンを配置して、
Private Sub コマンド_入力フォームを開く()
On Error Resume Next
Dim strDocName As String
Select Case Me.[品種名]
Case XXXX
strDocuName = "オーディオ""
Case XXXX
strDocuName = "DVD"
Case XXXX
strDocuName = "モニター"
Case XXXX
strDocuName = "オプション"
Case Else
strDocuName = ""
End Select
DoCmd.OpenForm stDocName, , , "[型式]='" & Me![型式] & "'"
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- その他(ブラウザ) Mycrosoft Edge フォームの履歴を完全に削除したい 3 2022/08/11 09:59
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSで定型入力の〒が表示さ...
-
Accessフォームが入力できません。
-
Access2000 フォームで計算し...
-
前のレコードの値を自動で入れたい
-
ACCESS 検索後に指定フォーム...
-
アクセスでの登録ボタンでの処...
-
Access サブフォームでの選択行...
-
X-Ripperというフリーウェアに...
-
Accessのコンボボックスでリス...
-
ACCESSでVBAから選択クエリの抽...
-
エクセルで、抽出したデータだ...
-
Exitイベントから自分自身のコ...
-
PCゲーム 音声 画像 抽出方法
-
「パラメータが少なすぎます。3...
-
Access VBA acCmdSelectRec...
-
2ちゃんのレス抽出の方法
-
Access 複数フォームを...
-
AccessでIDを入力したら他の項...
-
脂質抽出におけるクロロホルム...
-
ACCESS2000;日付と曜日...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
Accessでデータを更新したらそ...
-
access別のテーブルを参照して...
-
インデックスまたは主キーにはn...
-
Accessフォームが入力できません。
-
ACCESS フォームで入力データ...
-
access ダブリ登録を防止したい
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
アクセスでコードを入れると名...
-
入力した値をコンボボックスに...
-
テキスト型のフィールドでハイ...
-
「バリアント型でない変数に Nu...
-
Accessでフォームに自動入力し...
-
ACCESS2000の帳票フォームでテ...
-
accessでオプションボタンを使...
-
Accessで時間外管理の作成について
-
Access 自動入力の解除方法
-
Accessで、最後(更新)にエラ...
-
アクセスでの登録ボタンでの処...
おすすめ情報