vba - 将工作表导出为 CSV 会覆盖原始文件名 VBA
问题描述
我将每张工作表另存为 csv,当我将每张工作表另存为 csv 时,它会将原始模板文件名覆盖为新的 csv 名称。它从“.xlsm”变为“.csv”
我该如何避免呢?
我的代码如下所示:
Sub ExportToCSVs()
Dim ws As Worksheet
Dim nm As String
Application.ScreenUpdating = False
For Each ws In Worksheets
If ws.Name <> "Control" Then
ws.Select
nm = ws.Name
filenameconvention = "\\Lakesh\ExportToCSVs\" & nm
ActiveSheet.SaveAs Filename:="\\Lakesh\ExportToCSVs\" & nm & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
End If
Next ws
Sheets("Control").Activate
Application.ScreenUpdating = True
MsgBox "Csvs Created!"
End Sub
在这方面需要一些指导。
解决方案
它有助于在保存之前复制工作表。
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:="\\Lakesh\ExportToCSVs\" & nm & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
推荐阅读
- amazon-s3 - Sqoop 将 postgres 导入 S3 失败
- extjs - 如何隐藏网格列菜单中的特定列(ExtJS 6.5.3)?
- docker - 更改 Ceph 容器放置 (Docker)
- flutter - 加载包抛出异常
- css - 与 Material UI 主题反应 - 设置全局颜色变量
- typescript - 如何将 Promise 的对象转换为 Observable 的对象并且仍然有打字稿类型?
- sh - 命令“bash”产生了无效的 JSON:字符串文字中的无效字符 '\r'
- c - 指针类型的char数组的反向引用
- python - 增强训练数据
- android - 如何将约束添加到视图组而不是视图?