[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

vbs读取csv文件时文件内的日期改变了怎么解决?

大家好,最近在用vbs将几个csv文件的内容粘到一个excel文件时出现了两个问题:
1. 打开的csv文件的日期内容变了,如原来是"28/12/2010 16:30:30",现在是"12-28 16:30:30",单元格格式还是"dd/mm/yyyy hh:mm:ss",若在单元格上手动双击一下又显示正常了,现在需要打开的时候就显示"28/12/2010 16:30:30"请教大家怎么处理?手动打开时没有这个问题。
2. 用vbs脚本打开csv文件时有的文件日和月反了,即原来是"28/12/2010 16:30:30",现在显示的是"12/28/2010 16:30:30",但单元格格式还是"dd/mm/yyyy hh:mm:ss",请教大家怎么处理,谢谢!
脚本如下:
Dim pExcel, file
Set  pExcel  =  CreateObject("Excel.Application")
set file = pExcel.Workbooks.Open("date.csv")

与VBS无关,你直接用Excel打开也是一样。可能是Excel某些选项需要设置

TOP

把单元格的格式设置成Text试试
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

谢谢二位回复,手动打开csv文件日期是没有问题的,单元格的格式不能设为text,我需要将csv文件粘到一个excel模板,这个模板里需要根据日期来查找对应日期的其它单元格值。我用FormatDateTime函数处理一下可以矫正日期格式,但我的文件太多且每个文件里有几百行,处理完所有的需要很长时间,我考虑将打开csv文件用ecel>datea>from text导入同时录制宏,然后用VBS调用该VBA或把VBA转换成VBS来实现,不熟悉VBA的操作还在研究中,有熟悉的帮忙看看,谢谢!
以下是录制的VBA代码:
Sub Macro1()
'
' Macro1 Macro
'
'
  With ActiveSheet.QueryTables.Add(Connection:= _
  "TEXT;D:\dstat.csv" _
  , Destination:=Range("$A$1"))
  .Name = "dstat"
  .FieldNames = True
  .RowNumbers = False
  .FillAdjacentFormulas = False
  .PreserveFormatting = True
  .RefreshOnFileOpen = False
  .RefreshStyle = xlInsertDeleteCells
  .SavePassword = False
  .SaveData = True
  .AdjustColumnWidth = True
  .RefreshPeriod = 0
  .TextFilePromptOnRefresh = False
  .TextFilePlatform = 850
  .TextFileStartRow = 1
  .TextFileParseType = xlDelimited
  .TextFileTextQualifier = xlTextQualifierDoubleQuote
  .TextFileConsecutiveDelimiter = False
  .TextFileTabDelimiter = True
  .TextFileSemicolonDelimiter = False
  .TextFileCommaDelimiter = True
  .TextFileSpaceDelimiter = False
  .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1)
  .TextFileTrailingMinusNumbers = True
  .Refresh BackgroundQuery:=False
  End With
End Sub

TOP

可以到ExcelHome论坛找人帮忙写个VBA
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表