当前位置:  开发笔记 > 开发工具 > 正文

VBA将单页保存为CSV(不是整个工作簿)

如何解决《VBA将单页保存为CSV(不是整个工作簿)》经验,为你挑选了1个好方法。

我很欣赏有很多条目,例如将单个Excel工作表保存为csv 并将每个工作表导出到单独的csv文件 - 但我想在工作簿中保存单个工作表.

我的xlsm文件中的代码有一个参数和数据表.我使用粘贴的值创建数据的工作表副本,然后将其保存为csv.目前我的整个工作簿更改名称并成为csv.

如何在Excel工作簿中"另存为csv"单张?

有没有Worksheet.SaveAs或者我必须将我的数据表移动到另一个工作簿并以这种方式保存?

代码示例

' [Sample so some DIMs and parameters passed in left out] 
Dim s1 as Worksheet
Dim s2 as Worksheet

Set s1 = ThisWorkbook.Sheets(strSourceSheet)
' copy across
s1.Range(s1.Cells(1, 1), s1.Cells(lastrow, lastcol)).Copy

' Create new empty worksheet for holding values
Set s2 = Worksheets.Add

s2.Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats

' save sheet
s2.Activate
strFullname = strPath & strFilename


' >>> BIT THAT NEEDS FIXIN'
s2.SaveAs Filename:=strFullname, _
     FileFormat:=xlCSV, CreateBackup:=True

' Can I do Worksheets.SaveAs?

使用Windows 10和Office 365



1> 小智..:

这段代码对我来说很好.

Sub test()

Application.DisplayAlerts = False

ThisWorkbook.Sheets(strSourceSheet).Copy
ActiveWorkbook.SaveAs Filename:=strFullname, FileFormat:=xlCSV, CreateBackup:=True
ActiveWorkbook.Close

Application.DisplayAlerts = True

End Sub

它正在制作整个strSourceSheet表的副本,它打开一个新的工作簿,然后我们可以将其保存为.csv文件,然后关闭新保存的.csv文件,而不是弄乱原始文件上的文件名.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有