Append

(PWS4 IIS4 IIS5)
Append — コレクションにオブジェクトを追加します。コレクションが Fields である場合、コレクションにオブジェクトが追加される前に、新規 Field オブジェクトが作成されることがあります。

構文

collection.Append object
fields.Append Name, Type, DefinedSize, Attrib, FieldValue

パラメータ

collection コレクション オブジェクトを指定します。
fields Fields コレクションを指定します。
object 追加するオブジェクトを表すオブジェクト変数を指定します。
Name 新規 Field オブジェクトの名前を含む文字列型 (String) の値を指定します。fields に含まれるほかのオブジェクトとは異なる名前にする必要があります。
Type 新規フィールドのデータ型を DataTypeEnum 値で指定します。既定値は adEmpty です。adIDispatch、adIUnknown、および adVariant の各データ型は、ADO ではサポートされていません。したがって、Recordset に新規フィールドを追加するときに、これらのデータ型を使用することはできません。
DefinedSize 省略可能です。新規フィールドの指定サイズを文字数またはバイト数で表す長整数型 (Long) の値を指定します。このパラメータの既定値は、Type によって決まります。DefinedSize が 255 バイトを超えるフィールドは、可変長列として扱われます (既定の DefinedSize は指定されません)。
Attrib 省略可能です。新規フィールドの属性を FieldAttributeEnum 値で指定します。既定値は adFldDefault です。値を指定しない場合は、Type に基づいた属性が設定されます。
FieldValue 省略可能です。新規フィールドの値を表すバリアント型 (Variant) の値を指定します。値を指定しない場合は、Null 値が設定されます。

説明

FieldValue パラメータは、Record オブジェクトに (Recordset オブジェクトではなく)、Field オブジェクトを追加する場合にのみ有効です。Record オブジェクトでは、フィールドの追加と値の設定を同時に行うことができます。Recordset オブジェクトでは、Recordset を閉じているときにフィールドを作成し、その後で Recordset を開いてフィールドに値を設定する必要があります。

注意 Record オブジェクトの Fields コレクションに新規の Field オブジェクトを追加した場合は、まず、Value プロパティを設定してから、その他の Field プロパティを指定する必要があります。まず、Value プロパティの特定の値を割り当て、Fields コレクションに Update を呼び出しておきます。これで、Type や Attributes などその他のプロパティにアクセスできます。

データ型 (DataTypeEnum 値) が adArray、adChapter、adEmpty、adPropVariant、または adUserDefinedField の Field オブジェクトを、Fields コレクションに追加することはできません。これらのオブジェクトを追加すると、エラーが発生します。また、ADO では、adIDispatch、adIUnknown、および adIVariant のデータ型はサポートされていません。これらのデータ型の場合、追加時にエラーは発生しませんが、メモリリークなどの予期しない結果が生じる可能性があります。

レコードの場合

開いている Record の Fields コレクションで Append メソッドを呼び出しても、実行時エラーは発生しません。新規フィールドは、Record オブジェクトの Fields コレクションに追加されます。ただし、Recordset からの Record の場合、Recordset オブジェクトの Fields コレクションに新規フィールドは追加されません。

存在しないフィールドを作成して Fields コレクションに追加することができます。このためには、コレクションに既に存在しているフィールドの場合と同じように、フィールドオブジェクトに値を指定します。この指定によって、その Field オブジェクトの作成と追加が自動的に実行されます。

Record オブジェクトの Fields コレクションに Field を追加した後は、Fields コレクションの Update メソッドを呼び出して変更を保存してください。