访问导出为电子表格错误 - 3436创建文件失败

时间:2013-04-23 14:03:45

标签: ms-access ms-access-2007 ms-access-2010

我正在尝试在Excel电子表格的文件名中添加时间戳。

这是我的代码:

Private Sub Command31_Click()

Dim timeStamp As String
Dim XLfilePath As String

timeStamp = Now
XLfilePath = "C:\Folder\FileName - " & timeStamp & ".xls"

Debug.Print XLfilePath

DoCmd.TransferSpreadsheet acExport, , "MyAccessTable", XLfilePath, True

End Sub

出于某种原因,我收到以下错误:

Run-time error 3436
Failure creating file

因为Debug.Print显示XLfilePath变量持有而感到困惑:

C:\Folder\FileName - 23/04/2013 15:00:22.xls

......这就是我所期待的。

C:\Folder\已存在。

2 个答案:

答案 0 :(得分:1)

这可能不是有效的文件名。而不是

timeStamp = Now

尝试:

timeStamp = Format(Now,"YYYYMMDD HHMMSS")

我认为这是在文件名中存储日期的公认标准。此外,在Windows资源管理器中查看文件夹时,默认情况下您的文件按日期排序。

答案 1 :(得分:0)

我正在使用DoCmd.TransferSpreadsheet acExport ,,“导出出价”,strFileName,True 并获得不同的结果,从运行时错误3436,安静失败到创建文件,有时消失的紧凑/修复,有时不会。 我看起来很麻烦。 2013年7月使用Office 2010