程序前晚运行一切正常,但昨晚运行时被自动关闭,今早检查时发现错误:
部分代码如下:
Set xlSheet = xlBook.Worksheets("卡帐数据") '设置活动工作表
i = 3
Set rs = New ADODB.Recordset
rs.Open "Select * from err_kz_detail where err_mode='2' and balance=0 order by check_date,cardno ", Cn_Access
If Not rs.EOF Then
Do While (Not rs.EOF)
i = i + 1
xlSheet.cells(i, 1) = rs!check_date
xlSheet.cells(i, 2) = rs!kz
xlSheet.cells(i, 3) = rs!kqb
xlSheet.cells(i, 4) = rs!cardno
xlSheet.cells(i, 5) = rs!kz - rs!kqb
xlSheet.cells(i, 7) = rs!err_type
rs.MoveNext
Loop
End If
'不平的卡帐数据,错误类型为2
Set xlSheet = xlBook.Worksheets("全部卡帐不平数据") '设置活动工作表
i = 3 Set rs = New ADODB.Recordset
rs.Open "Select * from err_kz_detail where balance=0 order by cardno ", Cn_Access ‘昨晚原程序运行到此处被踢出
If Not rs.EOF Then
Do While (Not rs.EOF)
i = i + 1
xlSheet.cells(i, 1) = rs!check_date
xlSheet.cells(i, 2) = rs!kz
xlSheet.cells(i, 3) = rs!kqb
xlSheet.cells(i, 4) = rs!cardno
xlSheet.cells(i, 5) = rs!kz - rs!kqb
xlSheet.cells(i, 7) = rs!err_type
xlSheet.cells(i, 10) = rs!err_mode
rs.MoveNext
Loop
End If
xlBook.Close (1) '关闭工作簿
部分代码如下:
Set xlSheet = xlBook.Worksheets("卡帐数据") '设置活动工作表
i = 3
Set rs = New ADODB.Recordset
rs.Open "Select * from err_kz_detail where err_mode='2' and balance=0 order by check_date,cardno ", Cn_Access
If Not rs.EOF Then
Do While (Not rs.EOF)
i = i + 1
xlSheet.cells(i, 1) = rs!check_date
xlSheet.cells(i, 2) = rs!kz
xlSheet.cells(i, 3) = rs!kqb
xlSheet.cells(i, 4) = rs!cardno
xlSheet.cells(i, 5) = rs!kz - rs!kqb
xlSheet.cells(i, 7) = rs!err_type
rs.MoveNext
Loop
End If
'不平的卡帐数据,错误类型为2
Set xlSheet = xlBook.Worksheets("全部卡帐不平数据") '设置活动工作表
i = 3 Set rs = New ADODB.Recordset
rs.Open "Select * from err_kz_detail where balance=0 order by cardno ", Cn_Access ‘昨晚原程序运行到此处被踢出
If Not rs.EOF Then
Do While (Not rs.EOF)
i = i + 1
xlSheet.cells(i, 1) = rs!check_date
xlSheet.cells(i, 2) = rs!kz
xlSheet.cells(i, 3) = rs!kqb
xlSheet.cells(i, 4) = rs!cardno
xlSheet.cells(i, 5) = rs!kz - rs!kqb
xlSheet.cells(i, 7) = rs!err_type
xlSheet.cells(i, 10) = rs!err_mode
rs.MoveNext
Loop
End If
xlBook.Close (1) '关闭工作簿
Cn_Access.Open "Provider=MSDASQL.1;Password=sinopec;User ID=sa;Extended Properties='DRIVER={Sybase System 11};UID=sa;PWD=sinopec;DB=ic;SRVR=FJIC-LINCQ'"当本次DO while循环到30时出现提示“多步OLE DB操作产生错误。请检查每个 OLE DB 状态值。没有工作被完成。” 请各位大侠们救命啊