以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  导出excel列属性  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=53306)

--  作者:xrrzzy56
--  发布时间:2014/7/4 15:07:00
--  导出excel列属性
从“表A”中直接导出excel,导出后"日期"列为数字,需要是日期格式("yyyy-MM-dd"),求老师指导如何实现?
代码如下:
Dim tbl As Table = Tables("表A") 
Dim hdr As Integer = tbl.HeaderRows 
Dim Book As New XLS.Book Dim Sheet As XLS.Sheet = Book.Sheets(0) 
Dim Proc As New Process 
tbl.CreateSheetHeader(Sheet,0,0,False) 
For c As Integer = 0 To tbl.Cols.Count - 1 
For r As Integer = 0 To tbl.Rows.Count - 1 
sheet(r + hdr,c).value = tbl(r,c) 
Next 
Next 
Book.Save("c:\\reports\\test.xls") 
  Proc.File = "c:\\reports\\test.xls" Proc.Start()

--  作者:有点甜
--  发布时间:2014/7/4 15:14:00
--  
Dim tbl As Table = Tables("表A")
Dim hdr As Integer = tbl.HeaderRows
Dim Book As New XLS.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Proc As New Process
tbl.CreateSheetHeader(Sheet,0,0,False)
Dim st As XLS.Style = Book.NewStyle() \'定义新样式st.Format = "yyyy-MM-dd"
For c As Integer = 0 To tbl.Cols.Count - 1
    If tbl.Cols(c).IsDate Then
        For r As Integer = 0 To tbl.Rows.Count - 1
            sheet(r + hdr,c).value = tbl(r,c)
            sheet(r + hdr,c).Style = st
        Next
    Else
        For r As Integer = 0 To tbl.Rows.Count - 1
            sheet(r + hdr,c).value = tbl(r,c)
        Next
    End If
Next
Book.Save("c:\\reports\\test.xls")
Proc.File = "c:\\reports\\test.xls"
Proc.Start()

--  作者:xrrzzy56
--  发布时间:2014/7/4 15:22:00
--  
谢了图片点击可在新窗口打开查看