以文本方式查看主题 - 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=142251) |
-- 作者:lemonkashi -- 发布时间:2019/10/22 9:34:00 -- 转换excel里面数字列转换为日期 |
-- 作者:fangdejin -- 发布时间:2019/10/22 9:35:00 -- 可以用到代码命令 重置导入数据的列格式 |
-- 作者:lemonkashi -- 发布时间:2019/10/22 9:40:00 -- 请明示 代码命令 怎么写 。谢谢 |
-- 作者:有点蓝 -- 发布时间:2019/10/22 9:53:00 -- 使用代码导,例如 Dim dlg As New OpenFileDialog dlg.Filter= "所有文件|*.*|Excel2003文件|*.xls|Excel2007文件|*.xlsx" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 MessageBox.Show("你选择的是:" & dlg.FileName,"提示") If MessageBox.Show("是否合并?","请确 认!",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) = DialogResult.OK Then DataTables("表A").StopRedraw Dim App As New MSExcel.Application try Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(dlg.FileName) Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1) Dim Rg As MSExcel.Range = Ws.UsedRange Dim ary = rg.value For n As Integer = 2 To rg.Rows.Count Dim ro As Row = Tables("表A").AddNew For i As Integer = 0 To Tables("表A").Cols.Count - 1 If cs(i) = "UPDATE" Then ‘如果是日期列 Dim dt As DateTime = DateTime.FromOADate( ary(n,i+1)) \'把Double值转换为日期 ro(cs(i)) = dt Else ro(cs(i))= ary(n,i+1) End If Next Next MessageBox.Show("导入成功!","恭喜!") catch ex As exception msgbox(ex.message) MessageBox.Show("导入失败!","恭喜!") finally DataTables("表A").ResumeRedraw app.quit End try Else Return End If End If |
-- 作者:lemonkashi -- 发布时间:2019/10/22 22:08:00 -- 按照上述代码 问题解决了 非常感谢 |