Microsoft Access 掲示板

別テーブルのデータを1つのフォームに取り込む / 8

15 コメント
views
4 フォロー
8
hiroton 2020/10/27 (火) 13:26:58 7c8fb@f966d >> 3

メインのデータ取込処理は

        For j = 0 To UBound(Datas)
            rs(j) = Datas(j)
        Next

ですね。ループ処理になっているのでそれっぽく書き直すと

rs(0) = Datas(0)
rs(1) = Datas(1)
rs(2) = Datas(2)
:
:

な感じになります。これの意味するところはrsの0番目にDatasの0番目を入れる、rsの1番目にDatasの1番目を入れる・・・ということで、元データのフィールド名も作品テーブルのフィールド名も関係ありません。列番号だけ見て同じ列に値を入れているだけです。(列を飛ばしたりもできません)

例えばパターン2ならtblnameの1列目に「題名」を入れる、2列目に「作られた年」を入れるという処理をしていて、対応した列になっていればフィールド名は不問です

というわけで、「作品テーブル」から元データの列に対応する列を持ったテーブルをクエリ(SQL構文)で用意してあげます

パターン1
strSQL = "SELECT タイトル, 感想, 製作年, 国 FROM 作品テーブル"

パターン2
strSQL = "SELECT タイトル, 製作年 FROM 作品テーブル"

パターン3
strSQL = "SELECT タイトル, 感想, 国 FROM 作品テーブル"
通報 ...