尝试将工作簿的工作表2保存为CSV格式

时间:2013-05-09 17:52:31

标签: csv excel-vba save vba excel

单击此函数时,理想情况下应将所有工作表2复制到另一个工作簿,并将该工作表另存为csv文件。它不工作...我不知道如何告诉它保存文件的位置(我希望它保存到桌面)。请帮忙吗?

有没有更简单的方法可以做到这一点?

Private Sub CommandButton2_Click()


'save as csv'

fname = "cambs_uploader.csv"
Sheet2.SaveAs fname, xlCSV


End Sub

1 个答案:

答案 0 :(得分:0)

如果它就像每次保存到桌面一样简单,那么您只需将完整路径放在字符串中,而不仅仅是文件名。但是,如果要通过从目录树中选择来保存它,那么Excel中最简单的方法是使用其Application.GetSaveAsFilename()方法。

文档:http://msdn.microsoft.com/en-us/library/office/ff195734.aspx

示例:

Sub CommandButton2_Click()
   Dim fName As String
   Dim saveSheet As Worksheet

   Set saveSheet = ActiveWorkbook.Sheets("Sheet2") ' Change your sheet name

   saveSheet.SaveAs Application.GetSaveAsFilename("cambs_uploader.csv", ".csv", 1, "Save File")

   Set saveSheet = Nothing
Exit Sub