以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]按模板导出excel修改日期列格式  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=35603)

--  作者:xu3180497
--  发布时间:2013/6/28 10:50:00
--  [求助]按模板导出excel修改日期列格式

今天按照一个既定的模板导出评级记录表,其中有一列是评级日期,想在导出后日期列显示的是日期而不是数字,因此在代码中加以指定导出后的日期列格式,但是导出后还是显示为数字列?求指教!

导出的EXCEL:


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130628104910.png
图片点击可在新窗口打开查看
原始的评级记录表:


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130628105003.png
图片点击可在新窗口打开查看
导出代码:

Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "Excel 97-2003 工作簿(*.xls)|*.xls|Excel 工作簿(*.xlsx)|*.xlsx" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim Book As New XLS.Book (ProjectPath & "模板\\评级记录.xlsx")
    Dim Sheet As XLS.Sheet
    Dim Style As XLS.Style
    Book.Build() \'生成细节区
    Sheet = Book.Sheets(0)
    Style = Book.NewStyle
    Style.Format = "yyyy-MM-dd"
    Sheet.Cols(Tables("评级记录表").Cols("评比日期").Index).Style = Style
    Book.Save(dlg.FileName) \'保存工作簿
    Dim Proc As New Process \'打开工作簿
    Proc.File = dlg.FileName
    Proc.Start()
End If

 


--  作者:Bin
--  发布时间:2013/6/28 10:53:00
--  
http://www.foxtable.com/help/topics/1148.htm
--  作者:delxkjhgq
--  发布时间:2013/6/28 11:05:00
--  
模板中就把日期格式设置好!
--  作者:xu3180497
--  发布时间:2013/6/28 11:06:00
--  
大神,我就是看着那个做的,你没看我代码都和他那个一样嘛,但是我运行后却没有达到想要的效果啊。不知道应该怎么改啊。还请明示,谢谢!
--  作者:xu3180497
--  发布时间:2013/6/28 11:08:00
--  

如果我需要这样做就不问这个问题了。

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130628110743.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2013/6/28 11:17:00
--  
上例子看看
--  作者:benhu
--  发布时间:2013/6/28 11:20:00
--  
将EXCEL模版的日期列更改为日期型
--  作者:xu3180497
--  发布时间:2013/6/28 11:30:00
--  
知道了,是我的问题,因为我的Excel第一列有合并行,导致格式设置中断了,我把那些行跳过重新设置了一下就好了,还是很感谢你的帮助,让我重新审视了一下我的代码。
--  作者:xu3180497
--  发布时间:2013/6/28 11:30:00
--  
解决了,是我的问题,因为我的Excel第一列有合并行,导致格式设置中断了,我把那些行跳过重新设置了一下就好了,还是很感谢你的帮助,让我重新审视了一下我的代码。