複数値を持つフィールドへ値を追加する
複数値を持つフィールドへの値の追加は、INSERT文(追加クエリ)で行えます。このとき、追加先レコードの条件(WHERE句)を指定するのがポイントです。VBAで行うときは、DAO、ADOのどちらのコネクションでも可能です。
複数値を持つフィールドに値を追加する例
次のプログラムは、VBAを使い複数値を持つフィールドに値を追加する処理のサンプルです。DAOを使い追加クエリ(INSERT文)を実行しています。複数値を持つフィールドは「仕入れ先」です。

どのレコードの複数値フィールドに値を追加するのかを絞り込むため、INSERT文にはWHERE句を指定しています。また、複数値を持つフィールドはValueプロパティを使い「フィールド名.Value」と記述します。

Sub Sample(pFindKey As String, pAddData As Long)

    Dim objMDB  As DAO.Database
    Dim strSQL  As String

    Set objMDB = Application.CurrentDb

    strSQL = "insert into  商品マスタ" _
           & "            (仕入れ先.Value)" _
           & "     values (" & pAddData &")" _
           & "      where  商品コード= " & pFindKey

    objMDB.Execute strSQL

    Set objMDB = Nothing

End Sub

参考までに、追加対象レコードの条件(pFindKey)、追加する値(pAddData)は、いずれも引数で指定しています。また、コネクションはDAO(DAO.Database)を使用しています。
Copyright(C) 1999-2006 結城圭介。 All rights reserved