单击此函数时,理想情况下应将所有工作表2复制到另一个工作簿,并将该工作表另存为csv文件。它不工作...我不知道如何告诉它保存文件的位置(我希望它保存到桌面)。请帮忙吗?
有没有更简单的方法可以做到这一点?
Private Sub CommandButton2_Click()
'save as csv'
fname = "cambs_uploader.csv"
Sheet2.SaveAs fname, xlCSV
End Sub
答案 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