试图将桌面上工作簿的工作表2保存为CSV



这个函数,当点击时,理想情况下应该复制所有工作表2到另一个工作簿,并将该工作表保存为csv文件。不管用……我不知道如何告诉它在哪里保存文件(我想要它保存到桌面)。帮助吗?

有更简单的方法吗?

Private Sub CommandButton2_Click()

'save as csv'
fname = "cambs_uploader.csv"
Sheet2.SaveAs fname, xlCSV

End Sub

如果它像每次保存到桌面一样简单,那么您可以在字符串中放入完整的路径,而不仅仅是文件名。然而,如果你想从目录树中选择保存它,那么在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

最新更新