Foxtable(狐表)用户栏目专家坐堂 → Excel 报表的日期格式化代码问题


  共有14652人关注过本帖树形打印复制链接

主题:Excel 报表的日期格式化代码问题

帅哥哟,离线,有人找我吗?
mr725
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
Excel 报表的日期格式化代码问题  发帖心情 Post By:2009/8/29 23:21:00 [只看该作者]

当报表模板中的日期列没有设置日期格式的时候:这段格式化日期的代码怎么不起作用???

Dim Book1 As New XLS.Book(ProjectPath & "Attachments\订单.xls")
Dim Sheet As XLS.Sheet = Book1.Sheets(0)

Dim St2 As XLS.Style = Book1.NewStyle()      ‘这段格式化日期的代码怎么不起作用???
St2.Format = "yyyy-MM-dd"
Sheet.Cols(tables("订单").Cols("日期").index).Style = st2


Book1.Build() '生成细节区
Book1.Save(ProjectPath & "reports\订单.xls")
Dim Proc As New Process '打开工作簿
Proc.File = ProjectPath & "reports\订单.xls" 
Proc.Start()


 回到顶部
美女呀,离线,留言给我吧!
yangming
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/8/30 9:14:00 [只看该作者]

Dim Book1 As New XLS.Book(ProjectPath & "Attachments\订单.xls")
Dim Sheet As XLS.Sheet = Book1.Sheets(0)
Dim St2 As XLS.Style = Book1.NewStyle()
St2.BorderTop = XLS.LineStyleEnum.Thin
St2.BorderBottom = XLS.LineStyleEnum.Thin
St2.BorderLeft = XLS.LineStyleEnum.Thin
St2.BorderRight = XLS.LineStyleEnum.Thin
St2.Format = "yyyy-MM-dd"
For r As Integer = 2 to 3
    Sheet(r,tables("订单").cols.Count).Style = St2
 Next
Book1.Build() '生成细节区
Book1.Save(ProjectPath & "reports\订单.xls")
Dim Proc As New Process '打开工作簿
Proc.File = ProjectPath & "reports\订单.xls" 
Proc.Start()

 回到顶部
美女呀,离线,留言给我吧!
yangming
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/8/30 9:28:00 [只看该作者]

这样也行

Dim Book1 As New XLS.Book(ProjectPath & "Attachments\订单.xls")
Dim Sheet As XLS.Sheet = Book1.Sheets(0)

Dim St2 As XLS.Style = Book1.NewStyle()      '这段格式化日期的代码怎么不起作用???
St2.BorderTop = XLS.LineStyleEnum.Thin
St2.BorderBottom = XLS.LineStyleEnum.Thin
St2.BorderLeft = XLS.LineStyleEnum.Thin
St2.BorderRight = XLS.LineStyleEnum.Thin
St2.Format = "yyyy-MM-dd"
Sheet(3,tables("订单").cols.Count).Style = St2
Book1.Build() '生成细节区
Book1.Save(ProjectPath & "reports\订单.xls")
Dim Proc As New Process '打开工作簿
Proc.File = ProjectPath & "reports\订单.xls" 
Proc.Start()


 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2009/8/30 10:51:00 [只看该作者]

谢谢yang版~~~

原来
Sheet.Cols(tables("订单").Cols("日期").index).Style = st2      改为:
Sheet(3,tables("订单").cols.Count).Style = St2                    就可以了。   呵呵~

 回到顶部
美女呀,离线,留言给我吧!
yangming
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/8/30 11:40:00 [只看该作者]

以下是引用mr725在2009-8-30 10:51:00的发言:
谢谢yang版~~~

原来
Sheet.Cols(tables("订单").Cols("日期").index).Style = st2      改为:
Sheet(3,tables("订单").cols.Count).Style = St2                    就可以了。   呵呵~

光这样改还不够,新的样式会删除原有的样式,所以还得重新设置边框


 回到顶部