我想根据文件夹指定新Excel文件的保存位置(例如,文件夹名称为Input Data)。但是,我不想指定包含它的驱动器(例如C:\ Input Data),应该如何处理?
我看到其他人通常会指定文件夹所在位置的完整文件路径,例如C:\输入数据。但是,我想删除C:\部分。
预期结果将是将输出文件保存在名为“输入数据”的文件夹中的位置
答案 0 :(得分:0)
您可以使用系统位置,而不是尝试指定未知位置。这不仅对于每个用户都是一致的,而且应该是可以保存文件的位置。已经设置了许多系统,不允许在C:\驱动器的根目录中创建文件夹。
Dim fso As Object
Dim pth As String
Set fso = CreateObject("Scripting.FileSystemObject") 'create a filesystemobject
pth = fso.buildpath(Environ("userprofile"), "Input Data") 'get the path
If Not fso.FolderExists(pth) Then fso.CreateFolder pth 'create the folder if required
pth = fso.buildpath(pth, "My Workbook Name.xlsm") 'get the save path
ThisWorkbook.SaveAs pth 'save
Set fso = Nothing
要查看其他系统文件夹,请参见https://pureinfotech.com/list-environment-variables-windows-10/。您可能更喜欢使用%TEMP%。
您将需要更改Save
语句以适合