我看到了许多性质相似的问题,但是我遇到了一个特定的问题。这是我正在使用的代码:
filePath = GetFolderName
NewBook.Activate
ActiveWorkbook.SaveAs Filename:="Summary Book", FileFormat:=xlCSV, CreateBackup:=False
以上,GetFolderName
是一个函数,定义如下:
Public Funtion GetFolderName(Optional OpenAt As String) As String
Dim lCount As Long
GetFolderName = vbNullString
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = OpenAt
.Show
For lCount = 1 To .SelectedItems.Count
GetFolderName = .SelectedItems(lCount)
Next lCount
End With
End Function
此功能不是我写的,而是我的同事写的,因此我并不完全了解它的内部功能。当我运行代码时,它可以正常工作,但是无论我选择哪个文件夹,它都会将文件保存到先前的一个文件夹中。IE.E。-如果我单击3个文件夹并保存,它将文件保存在第二个文件夹中。我以前也注意到它正在将其另存为“文件”。将使用诸如记事本之类的应用程序打开该文件,而不是使用excel打开的.CSV文件。任何人都知道这是怎么回事吗?
答案 0 :(得分:3)
您获得了文件路径,但是在保存文件时不使用它
filePath = GetFolderName
NewBook.SaveAs Filename:= Filepath & "\Summary Book.csv", FileFormat:=xlCSV, CreateBackup:=False