还有一个办法,根据模版生成报表之后,用foxtable编码打开这个文件,遍历相关数据,根据数据设置格式。
大概如下:
'第一步正常根据模版生成报表
Dim Book As New XLS.Book(ProjectPath & "Attachments\出库单.xls")
Dim fl As String = ProjectPath & "Reports\出库单.xls"
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿
'第二步对生成的报表二次加工
Book = New XLS.Book(fl)
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Style As XLS.Style = Book.NewStyle() '定义新样式
Style.ForeColor = Color.Red '设置样式的字体颜色
For i As Integer = 0 To sheet.Rows.count -1
Dim s As String = sheet(i,5).Value '获取此行第六列的内容
Dim v As Double = val(v) '转换为数值,如果大于100
If v > 100 Then
sheet(i,5).Style = style
End If
Next
Book.Save(fl) '保存工作簿
'第三步,打开生成好的报表
Dim Proc As New Process '打开工作簿
Proc.File = fl
Proc.Start()