Bof或者Eof中有一个是真,或者当前的纪录已被删除,所需的操作要求一个当前的纪录??这是什么意思?程序又错在哪里?要怎么改?
Function CopyRecordSetUpdatable(ByVal rs As ADODB.Recordset, ByVal mfg As MSHFlexGrid) As ADODB.Recordset
Dim rsReturn As ADODB.Recordset
Dim fld As ADODB.field
Dim lFieldsCount As Long
Dim vIndexs() As Variant
Dim vValues() As Variant
Dim i As LonglFieldsCount = rs.Fields.count
ReDim vIndexs(lFieldsCount - 1)
ReDim vValues(lFieldsCount - 1)Set rsReturn = New ADODB.RecordsetFor i = 0 To lFieldsCount - 1
Set fld = rs.Fields(i)
vIndexs(i) = i
rsReturn.Fields.Append fld.name, fld.Type, fld.DefinedSize, fld.Attributes Or adFldUnknownUpdatableNext
rsReturn.OpenWhile Not rs.BOFFor i = 0 To lFieldsCount - 1vValues(i) = mfg.TextMatrix(10, i)Next
rsReturn.AddNew vIndexs, vValuesrs.MoveNextWendIf Not rsReturn.BOF Then
rsReturn.UpdateBatch
rsReturn.MoveFirst
End IfSet CopyRecordSetUpdatable = rsReturnEnd Function