У меня есть много шаблонов Excel с разными именами. Один из них называется griep-weerstand v4.xlsb. Но мой вопрос касается всех шаблонов.
Я хочу интегрировать имя файла в сценарий сохранения, который устанавливает каталог сохранения по умолчанию и имя сохранения по умолчанию. Оба имеют пробелы в имени. После добавления правильного количества кавычек каталог сохранения по умолчанию устанавливается правильно, однако я продолжаю бороться с добавлением имени книги в скрипт. Я пробовал несколько вещей, и ни одна из них не сработала до сих пор.
каталог сохранения по умолчанию: M:\Commercie\Marktdata\IRi\Segment ontwikkeling
имя файла по умолчанию (в этом примере): griep-weerstand v4.xlsb
Ниже то, что я пробовал в последний раз:
Sub save_workbook_name()
Dim workbook_Name As Variant
Dim location As String
Dim workbookname As String
Dim workbookdirectory As String
Dim correctfilename As Variant
workbookname = ActiveWorkbook.Name
workbookdirectory = "M:\Commercie\Marktdata\IRi\Segment ontwikkeling\"
correctfilename = """M:\Commercie\Marktdata\IRi\Segment ontwikkeling\" & workbookname & """"
workbook_Name = Application.GetSaveAsFilename(fileFilter:="Excel binary sheet (*.xlsb), *.xlsb", initialfilename:=correctfilename)
If workbook_Name <> False Then
ActiveWorkbook.SaveAs Filename:=workbook_Name, FileFormat:=50
End If
End Sub
Я думал, что чтение имени рабочей книги в виде строки и добавление правильного количества кавычек в комбинированный initialfilename
поможет.
Когда я добавляю окно сообщения, отображающее объединенный результат, я получаю правильный путь и имя:
Но я продолжаю иметь диалоговое окно «Сохранить как» в правильном каталоге, но без имени файла при использовании этого в строке «getaveasfilename».
Как я могу заставить комбинацию каталога и имени файла работать с getsaveasfilename
? Или я должен просто использовать его в сценарии activeworkbook.saveas
?
GetSaveAsFilename
не любит двойные кавычки, если имя файла включено:"M:\Commercie\Marktdata\IRi\Segment ontwikkeling\" & workbookname
должно работать. - person Pᴇʜ   schedule 29.10.2018