VBAとDAO.Recordsetでの作業中に、奇妙な問題が発生しました。私は現在、レコードセットをループしていて、対応するフィールドをearch反復用に配列に保存しています。しかし、whileループのために「.MoveNext」を呼び出すたびに、「rs.Fields.Field(i).Value」に格納されている情報が上書きされるため、フィールドは使用できなくなります。私はデバッグ中にこれを理解しました。
いくつかの関連コード:
rsでない場合は何もありません
rs.RecordCount>0の場合Then
rs付き
.EOFではありませんが
ReDim Preserve fieldSet(0 To i + 1)As DAO.Fields
fieldSet(i)=rs.Fieldsを設定します
i = i + 1'この時点では、値はそのままです。
.MoveNext'ここでは、値フィールド内に「現在のレコードはありません」のみが保存されます
ウェンド
で終わる
終了する場合
うまくいけば、誰かがこれを引き起こす原因についての考えを持っています。前もって感謝します。