使用 VBA 将电子表格保存为 *.csv 时出现问题
Posted
技术标签:
【中文标题】使用 VBA 将电子表格保存为 *.csv 时出现问题【英文标题】:Problem saving a spreadsheet as *.csv using VBA 【发布时间】:2019-06-10 15:19:14 【问题描述】:问题是我正在尝试将这个电子表格(我已经打开并保存为 *.xlsx)保存为 *.csv 文件,并且我遇到错误 Runtime error 1004 Method 'SaveAs' of object '_Workbook '失败。
这是针对 Excel 2016 的。
Dim FilePath as string
FilePath = "U:\CAP Data - Every Month\ISEAdHoc\" & FileMonth & FileYear & "\"
Dim ISEAdHoc_FileName_CSV As String
ISEAdHoc_FileName_CSV = "ISEAdHoc_" & FileMonth & "CAP_" & Format(Now(), "YYYYMMDD") & "_" & Format(Now(), "HHMMSS")
Dim FileNameforCSVandPath As String
FileNameforCSVandPath = FilePath & ISEAdHoc_FileName_CSV & ".csv"
Sheets("ISEAdHoc").Activate
'ActiveWorkbook.SaveAs Filename:=FilePath & ISEAdHoc_FileName_CSV, FileFormat:=xlCSV, CreateBackup:=False, Local:=True
Workbooks(FileNameforCSVandPath).Close SaveChanges:=True
我希望将文件保存为 *.csv。但由于某种原因,我不断收到错误“运行时错误 1004 对象 '_Workbook' 的方法 'SaveAs' 失败。”请帮忙!
【问题讨论】:
如果我可以建议采用this answer from today 中列出的方法,我想你会发现你的问题。 【参考方案1】:您的代码似乎可以正常工作。验证您的 U:
驱动器是否正确映射。
我能够复制您的代码并且它对我有用。
【讨论】:
请不要将问题作为答案发布。 @Damian 嗯,这是代码失败的正当理由,并且在 40 代表时无法发布 cmets - 已编辑到声明中 @MathieuGuindon 就像现在一样,是的。但他是在向 OP 询问。那不是答案。以上是关于使用 VBA 将电子表格保存为 *.csv 时出现问题的主要内容,如果未能解决你的问题,请参考以下文章
使用 VBA 密码保护进行保存时出现错误消息“运行时错误‘1004’:对象‘_Workbook’的方法‘SaveAs’失败”
尝试在映射服务器上将 XLSM 保存为 CSV 时出现“对象 _workbook 的方法保存失败”错误