以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 导出后时间显示 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=89918) |
-- 作者:huhu -- 发布时间:2016/9/1 11:48:00 -- 导出后时间显示 时间列为空,怎么导出后就变为了1900-1-0 0:00:00 时间列不为空导出正常。
|
-- 作者:有点蓝 -- 发布时间:2016/9/1 13:59:00 -- 通过什么方式导出的? |
-- 作者:huhu -- 发布时间:2016/9/1 15:08:00 -- Dim startdate As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker1") Dim enddate As WinForm.DateTimePicker = e.Form.Controls("DateTimePicker2") If User.Name.Trim() = "jichenggang@bdcom.com.cn" Then Dim jcg As String = "(邮件通知 Like \'%eponver@bdcom.com.cn%\' or 邮件通知 like \'%switchver@bdcom.com.cn%\' or 邮件通知 like \'%IEswitchver@bdcom.com.cn%\')" DataTables("临时版本跟踪表").LoadFilter = "需求提交时间 > \'" & startdate.Value & "\' And 需求提交时间 < \'" & enddate.value.AddDays(1) & "\' and (邮件通知 Like \'%eponver@bdcom.com.cn%\' or 邮件通知 like \'%switchver@bdcom.com.cn%\' or 邮件通知 like \'%IEswitchver@bdcom.com.cn%\')" DataTables("临时版本跟踪表").Load ElseIf User.Name.Trim() = "liujiyong@bdcom.com.cn" Then DataTables("临时版本跟踪表").LoadFilter = "需求提交时间 > \'" & startdate.Value & "\' And 需求提交时间 < \'" & enddate.value.AddDays(1) & "\'" DataTables("临时版本跟踪表").Load End If Dim dt As Table = Tables("临时版本跟踪表") Dim filepath As String = "D:\\临时版本跟踪表\\" & startdate.Value & "-" & enddate.value & ".xls" Dim nms() As String = {"临时版本编号","需求编号","博达机型","客户","需求提交时间","预计提供时间","开发环境","代码message","软件环境","show_version","技术支持邮箱","研发邮箱","客户期望交期","log","发布目录","测试目录","状态","状态直白"} \'要导出的列名 Dim caps() As String = {"临时版本编号","需求编号","博达机型","客户","需求提交时间","预计提供时间","开发环境","代码message","软件环境","show_version","技术支持邮箱","研发邮箱","客户期望交期","log","发布目录","测试目录","状态","状态直白"} \'对应的列标题 Dim szs() As Integer = {100,100,100,200,200,200,200,200,200,200,200,200,200,200,200,200,80,200} \'对应的列宽 Dim Book As New XLS.Book \'定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表 Dim st As XLS.Style = Book.NewStyle \'日期列的显示格式 st.Format = "yyyy-MM-dd hh:mm:ss" For c As Integer = 0 To nms.length -1 Sheet(0, c).Value = caps(c) \'指定列标题 Sheet.Cols(c).Width = szs(c) \'指定列宽 If dt.Cols(nms(c)).IsDate Then \'如果是日期列 Sheet.Cols(c).Style = st \'设置显示格式 End If Next For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据 For c As Integer = 0 To nms.length -1 Sheet(r +1, c).Value = dt.rows(r)(nms(c)) Next Next Book.Save(filepath) MessageBox.show("保存路径:" & FilePath,"导出成功",MessageBoxButtons.OK,MessageBoxIcon.Information)
|
-- 作者:有点蓝 -- 发布时间:2016/9/1 15:22:00 -- 试试 For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据 For c As Integer = 0 To nms.length -1 If not dt.rows(r).Isnull(nms(c)) Then Sheet(r +1, c).Value = dt.rows(r)(nms(c)) Next Next |