2 列のテーブルの行をループして、最初の列で特定の識別子をチェックし、2 番目の列のデータを新しいテーブルにコピーするクエリを作成することはできますか?
例:
tblSurveyData
FirstColumn Second Column
A0 John
A2 Smith
A3 05-01-1973
tblSurveyReport
FirstName MiddleName LastName DateOfBirth
John Smith 05-01-1973
A0 データは、FirstName、A1 MiddleName、A2 LastName、および A3 DateOfBirth に移動します。さらに多くの識別子とフィールドがありますが、例として、Access のクエリでこれをどのように行うか、または VBA の方が優れたソリューションですか?
私が思いついた唯一の解決策は次の VBA ですが、これは 2 列のテーブルをバイパスし、tblSurveyReport テーブルに挿入しようとします。残念ながら、各データを独自の行に配置するため、役に立ちません。
If Identifier = "A0" Then
DoCmd.RunSQL "INSERT INTO tblSurveyReport " _
& "(FirstName) " _
& "VALUES ('" & Info & "')"
ElseIf Identifier = "A1" Then
DoCmd.RunSQL "INSERT INTO tblSurveyReport " _
& "(MiddleName) " _
& "VALUES ('" & Info & "')"
ElseIf Identifier = "A2" Then
DoCmd.RunSQL "INSERT INTO tblSurveyReport " _
& "(LastName) " _
& "VALUES ('" & Info & "')"
ElseIf Identifier = "A3" Then
DoCmd.RunSQL "INSERT INTO tblSurveyReport " _
& "(DateOfBirth) " _
& "VALUES ('" & Info & "')"
End If
ただし、各データは独自の行に入るため、すべて同じ行に配置する必要があります。
どんな助けでも大歓迎です。
前もって感謝します。
TC