#excel #vba
#excel #vba
Вопрос:
Я работаю над макрокомандой, которая включает в себя генерацию имени файла и сохранение листа Excel в формате pdf с этим именем.
Я смог сгенерировать имя целевой папки следующим образом.
user_name = Environ$("UserName")
file_dir = "C:Users" amp; user_name amp; "DocumentsJobs"
Имя файла создается следующим образом.
Job_No = Site amp; "SV" amp; num_from_cell
PDF = Job_No amp; ".pdf"
file_path = file_dir amp; PDF
В настоящее время возвращается приведенный выше код MWSV234.pdf
. Я хочу, чтобы это было MWSV00234.pdf
. num_from_cell
берется из одной из ячеек на листе Excel.
Короче говоря, я хочу, чтобы в левом поле num_from_cell
было 5 цифр. Не могли бы вы, пожалуйста, рассказать мне, как?
Комментарии:
1.
Job_No = Site amp; "SV" amp; Right("0000" amp; num_from_cell, 5)
Ответ №1:
Было бы безопаснее использовать Environ$("HomePath")
для получения домашнего каталога пользователей, а не Environ$("UserName")
file_dir = Environ$("HomePath") amp; "DocumentsJobs"
Затем используйте Format
для форматирования с начальными нулями для 5 чисел
Job_No = Site amp; "SV" amp; Format(num_from_cell, "00000")
PDF = Job_No amp; ".pdf"
file_path = file_dir amp; PDF
Комментарии:
1.
Environ$("HomePath")
возвращает единственную обратную косую черту на моем компьютере (компании). Обычно я выбираюEnviron$("UserProfile")