以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  导出表数据到EXCEL中  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=68685)

--  作者:kunmails
--  发布时间:2015/5/22 14:57:00
--  导出表数据到EXCEL中
目前有个表“扫码数据表” 在Drawcell 事件中写了代码 
Dim drs As Integer
    drs = e.Table.DataTable.Select("[产品防伪码] = \'" & e.Row("产品防伪码") & "\'").Count
    If drs > 1 Then
        e.Style = "重复"
    End If

图片点击可在新窗口打开查看此主题相关图片如下:on3)x8ryc6erq`8l)(j4.png
图片点击可在新窗口打开查看

如果码重复就标记为红颜色
想将这个表导出到EXCEL中的时候导出的数据重复行业带红颜色!如何实现,请大家帮忙!谢谢!

Dim dt As Table = Tables("扫码数据表")
Dim Book As New XLS.Book \'定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表
Dim Style As Xls.Style = Book.NewStyle \'新建一个样式
Style.BackColor = Color.Red \'样式的背景颜色设为红色
For c As Integer = 0 To dt.Cols.Count -1 \'添加列标题
    Sheet(0, c).Value = dt.Cols(c).Name
Next
For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据
    For c As Integer = 0 To dt.Cols.Count -1
        Sheet(r +1, c).Value = dt.rows(r)(c)
    Next
Next
\'打开工作簿
Book.Save("c:\\reports\\test.xls")
Dim Proc As New Process 
Proc.File = "c:\\reports\\test.xls"
Dim St2 As XLS.Style = Book.NewStyle
St2.Format = "yyyy-MM-dd"
Sheet.Cols(dt.Cols("扫码时间").Index).Style = st2
Proc.Start()
图片点击可在新窗口打开查看图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2015/5/22 14:59:00
--  

 为什么不直接用saveExcel ?

 

 http://www.foxtable.com/help/topics/0559.htm

 


--  作者:Bin
--  发布时间:2015/5/22 15:01:00
--  
同样是这么干,和你DrawCell里面类似的

For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据
    For c As Integer = 0 To dt.Cols.Count -1
        Sheet(r +1, c).Value = dt.rows(r)(c)
        if dt.DataTable.Select("[产品防伪码] = \'" & dt.rows(r)("产品防伪码") & "\'").Count >1 then
              Sheet(r +1, c).Style=Style 
        end if
    Next
Next

--  作者:kunmails
--  发布时间:2015/5/22 15:03:00
--  
非常感谢!