一个小问题
在编写帮助的时候,我曾经写过一段简单的代码:
Dim
Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Book.Build()
Sheet(Sheet.Rows.Count, 0).Value = "制单人:" & User.Name
Book.Save("c:\reports\test.xls")
执行的结果很奇怪,并没有如我所料在最后一行出现制单人,也就是说第四行代码没有任何效果,这一度让我百思不得其解。
这是因为执行Build方法之后,原来的模板工作表会被全部删除,取而代之的是基于模板生成的新的工作表,而变量sheet在引用的是模板工作表,所以第四行代码是无效的。
因此,如果要在Build方法生成后修改生成的报表,必须使变量Sheet指向新生成的工作表:
Dim
Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")
Dim Sheet As XLS.Sheet
Book.Build()
Sheet = Book.Sheets(0)
Sheet(Sheet.Rows.Count, 0).Value = "制单人:" & User.Name
Book.Save("c:\reports\test.xls")