お世話になっております。
ひとつご教授ください。
それは、条件によって参照するテーブルのデータを見にいかせる方法です。
マスターテーブルと、材料費テーブル、人件費テーブルとあって、これらのテーブルの構造は以下のようになっています。
<マスターテーブル>
Cost_ID
G_ID
<材料費テーブル>
Cost_ID(規定値=1)
G_ID(材料の項目によって1~番号を振ってある)
M_Name(G_IDに対応する材料費名)
<人件費テーブル>
Cost_ID(規定値=2)
G_ID(人件の項目によって1~番号を振ってある)
P_Name(G_IDに対応する人件費名)
という構造にしており、マスターテーブルには、材料費ならCost_IDには「1」が代入され、それに対応する項目の番号をデータとして格納していっています。(人件費についても同様)
そこで、レポートにおいて、Cost_IDをグループ化させて、出力しているのですが、材料費・人件費の項目ID(G_ID)を、Cost_IDを元に区別させ、それに対応する項目ID(G_ID)を元に項目名を表示させようと思っています。
例えば、SelectCaseを使えばいいのかなと予想はつくのでしょうが、可能なのでしょうか?可能な場合どのようにしたらよろしいのでしょうか?よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんにちは。
maruru01です。レポートのレコードソースはマスタテーブルにして、詳細のFormatイベントに記述する方法。
(エラートラップはしてない。)
Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer)
Select Case Me!txtCostID
Case 1
Me!txtName = DLookup("M_Name", "材料費テーブル", "G_ID = " & CLng(Me!txtGID))
Case 1
Me!txtName = DLookup("P_Name", "人件費テーブル", "G_ID = " & CLng(Me!txtGID))
End Select
End Sub
ところで、材料費テーブルと人件費テーブルにはCost_IDというフィールドがあるのでしょうか。
もしそうなら、すでにテーブルを別にしてあるのでそんなフィールドはいらないと思いますが。
(2つのテーブルを1つにするなら、費用区分として必要ですが。)
この回答への補足
人件費テーブルと、材料費テーブルにはそれぞれCost_IDというフィールドを設けています。
人件費テーブルには規定値を2とし、材料費テーブルには、規定値1を入れて、マスターテーブルにこれはどの費用かを認識させるためにです。
G_IDと、M_IDは、人件費・材料費の中のさらに細かい項目と言う意味でフィールドを設けてます。
さっそく、頂いたソースをもとに組んでみます。
また、不明な点がでましたらよろしくお願いいたします。
No.3
- 回答日時:
No.2の修正です。
Caseの値が両方とも1になっているので、下の方を2にしておいて下さい。
この回答への補足
何度か試してみたのですが、うまく行きません 汗
構造としては、Cost_IDをヘッダーとして、その詳細として、G_IDを設置しています。Cost_IDをグループとしているので右のような構造にしているのですが、教えていただいたソースでも大丈夫なのでしょうか?
エラーの内容としては、「オブジェクトに値を代入できません」というエラーがでます。
何度もすみませんが、よろしくお願いいたします。
No.1
- 回答日時:
レポートのレコードソースを
select TZ.* from マスターテーブル TMA inner join 材料費テーブル TZ on TMA.Cost_ID=TZ.Cost_ID and TMA.G_ID=TZ.G_ID
union
select TJ.* from マスターテーブル TMA inner join 人件費テーブル TJ on TMA.Cost_ID=TJ.Cost_ID and TMA.G_ID=TJ.G_ID;
――みたいなのにして、出力するとか。
クエリの列名をそろえたり、レポートの詳細部のformat時に、連結フィールドの可視属性を切り替えたり、などを行う必要があるかも。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- その他(データベース) accessでの請求管理について 2 2022/06/13 21:51
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Oracle SQL update方法 2 2022/06/22 14:07
- その他(クラウドサービス・オンラインストレージ) おすすめのパスワードマネージャは? 1 2023/02/28 20:09
- SQL Server ACCESSで複数テーブルを結合して、リストを作る方法を教えてください。 2 2022/08/12 19:32
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Access(アクセス) ACSESS初心者です マンション管理をACCESSで出来ないかとチャレンジしています。 リレーショ 3 2022/10/08 11:45
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブルからテーブル...
-
Accessでテーブル名やクエリ名...
-
Accessで、複数のテーブルで随...
-
Accessでvlookupみたいなことは...
-
INSERT時にデータ登録とmaxの発...
-
Accessレコードの追加や変更が...
-
グループ集計のカウントについ...
-
Accessでエラー
-
ACCESSに同時アクセス(編集)を...
-
ACCESS ACCESS VBA テーブル ...
-
Access2003 リレーションされ...
-
AccessのテーブルからExcelをイ...
-
Accessのレポートのデータ出力...
-
Accessのテーブルの作り方で
-
MS-ACCESSで、レコードセットを...
-
Excel 2019 のピボットテーブル...
-
IT用語について質問です。 以前...
-
エクセルVBAで5行目からオート...
-
Excelの表、重複データ2行を1...
-
アンドロイド おサイフケータイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
Accessレコードの追加や変更が...
-
access テーブル内のレコード...
-
ACCESSに同時アクセス(編集)を...
-
3つの表を1つに縦に連結する
-
Accessでvlookupみたいなことは...
-
Accessの追加クエリで既存のテ...
-
Accessクエリでの、LIKE条件
-
Accessでテーブルからテーブル...
-
ツリー構造をRDBで表現するには?
-
デザインビューで、連結式 を...
-
2つのテーブルを比較して一致し...
-
ACCESSで指定されたテーブルか...
-
リンクテーブルを CopyObject ...
-
SQLで日付を条件に削除したい
-
SQLで条件指定結合をしたいがNU...
-
時間の足し算
-
パススルークエリをテーブル作...
-
INSERT時にデータ登録とmaxの発...
-
ODBCで接続するとDBに変更/追加...
おすすめ情報