以下代码:打印当前表、选定行的WORD格式报表
With Tables("XXXX")
For
i As Integer = .TopPosition
To .BottomPosition '选定行
CurrentTable.Position = i
Dim
dr = CurrentTable.Rows(i)
Dim
xm = dr("姓名")
Dim
fl As String = ProjectPath
& "Reports\" & xm & ".doc"
Dim
tm As String = ProjectPath & "Attachments\表.doc" '指定模板文件
Dim
wrt As New WordReport(Tables("XXXX"),tm,fl) '定义一个WordReport
wrt.Build() '生成报表
wrt.Quit() '显示报表
Next
MessageBox.Show("文件已生成")
End With
问题:
当选定一行、多行时都没有问题
但是当选定所有行时,在第一个循环时 运行到 wrt.Build() 时候很长,而且经常出错。
而将循环起始从第一行调到第二行,则没有这种情况,即将其中的两句改为:
CurrentTable.Position = i+1
Dim dr = CurrentTable.Rows(i+1)
请高手指点,是什么原因啊?
[此贴子已经被作者于2016/2/23 17:34:23编辑过]