在VBA中添加一个string的path

我在Excel VBA中使用FileSystemObject创build一个输出文件,我想让用户使用FileDialog框select要保存输出的位置。

这里是我的代码片段,

 Dim objFSO As FileSystemObject Dim tsStream As TextStream Dim strFilePath as String Dim FD as FileDialog Set FD = Application.FileDialog(msoFileDialogSaveAs) With FD .AllowMultiSelect = False If .Show = -1 Then For Each i in .SelectedItems strFilePath = i Next i Else End If End With Set FD = Nothing Set objFSO = New FileSystemObject Set tsStream = objFSO.CreateTextFile(strFilePath &".txt", True) 

问题是代码的“另存为types:”是Excel文件types。

有谁能够帮助我?

您不能将筛选器设置为msoFileDialogSaveAs ,而不是将其筛选到文件path,请使用msoFileDialogFilePicker 。 现在你可以设置filter。

 Set FD = Application.FileDialog(msoFileDialogFilePicker) FD.Filters.Clear FD.Filters.Add "Text file", "*.txt"