Попытка заставить Excel «сохранить» книгу, используя следующий код:
Sub SaveWorkbook(my_FileName, sFolder)
Dim workbook_Name As String
Dim fName As String
fName = CStr(Range("B9").Value)
workbook_Name = "\" & fName & ".xls"
Workbooks(my_FileName).SaveAs fileName:=sFolder & workbook_Name
End Sub
my_FileName
и sFolder
передаются другой функцией:
Sub ProduceDoc()
MsgBox "Please Select the File that Contains the Document"
my_FileName = Application.GetOpenFilename(FileFilter:="Excel Files,*.xl*,*.xsl*,*.xm*")
sFolder = "C:\Users\" & InputBox("Please type your employee id") & "\Desktop\" & InputBox("What will you name your folder?")
Workbooks.Open (my_FileName)
SaveWorkbook (my_FileName)
End Sub
В данный момент для строки выдается ошибка:
Workbooks(my_FileName).SaveAs fileName:=sFolder & workbook_Name
и я не могу понять, почему. Я предполагаю, что это происходит, потому что я забыл что-то простое.
Что я сделал до сих пор, чтобы проверить:
Проверено, что my_FileName
успешно передается функции SaveWorkbook()
, и это так. Мне удалось открыть документ, указанный в функции ProduceDoc()
, и заставить my_FileName
напечатать в определенной ячейке в пределах SaveWorkbook()
Это все, что у меня есть в наборе инструментов. Какие-нибудь мысли?
Edit: я теперь обновил строку Workbooks(my_FileName).SaveAs fileName:=sFolder & workbook_Name
, чтобы показать новое состояние, а также вызывается sFolder. Это все еще дает ту же ошибку.