建立每天的表

Option Explicit
 Function action
 Dim xlsApp,dstr,fname
 dstr = FormatDateTime(Date)
 fname="d:\" + dstr + ".xls"

 Set XlsApp = CreateObject("Excel.Application")

 XlsApp.WorkBooks.Add

 XlsApp.ActiveWorkbook.SaveAs("d:\fname.xls")

 
 XlsApp.Quit

 Set XlsApp = nothing 

 End Function
 这样建立的表的名字不是当天日期而是"fname",不知道哪里有问题,请高手看看

问题补充:
XlsApp.ActiveWorkbook.SaveAs("d:\fname.xls")
  改为XlsApp.ActiveWorkbook.SaveAs(fname)还是不行,我把这段代码放在按钮左键的事件里,运行.左键5次后发现只在进程里有5个excel.exe,还是没有建立当天日期为名的excel
  还是不行,先搁一下这个问题

最佳答案

首先必须确认你的fname能否作为正确的文件名,从你的代码来看,首先Date并没有赋值,其次你并没有指定格式,因此fname的值为D:\00:00:00.XLS,此文件名非法,因此没有创建成功。

   可将代码修改为dstr = FormatDateTime(Now,2)

   以下为FormatDateTime函数参考:
   FormatDateTime(Date[,NamedFormat])

   NamedFormat参数的设置值如下:

   常数 值 描述 
   vbGeneralDate 0 显示日期和/或时间。如果有日期部分,则用短日期格式显示。如果有时间部分,则用长时间格式显示。如果都有,两部分都显示。 
   vbLongDate 1 用计算机区域设置值中指定的长日期格式显示日期。 
   vbShortDate 2 用计算机区域设置值中指定的短日期格式显示日期。 
   vbLongTime 3 用计算机区域设置值中指定的时间格式显示时间。 
   vbShortTime 4 用24小时格式(hh:mm)显示时间

提问者对于答案的评价:
是格式的问题,谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc277654.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐