Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как задать название сохраненого ПДФ файла через макрос - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Как задать название сохраненого ПДФ файла через макрос
YH96 Дата: Суббота, 29.08.2020, 16:33 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Привет.
Есть макрос:

[vba]
Код
Sub Макрос1()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Application.GetSaveAsFilename(FileFilter:="файл PDF, *.pdf"), Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
[/vba]
Можно ли сразу из макроса задавать название файла? Подгружались бы данные из определенной ячейки. Из яцейки Н3 и подставлялось значение в название файла.
К сообщению приложен файл: 0361537.xlsm (50.0 Kb)


Сообщение отредактировал YH96 - Суббота, 29.08.2020, 16:43
 
Ответить
СообщениеПривет.
Есть макрос:

[vba]
Код
Sub Макрос1()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Application.GetSaveAsFilename(FileFilter:="файл PDF, *.pdf"), Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
[/vba]
Можно ли сразу из макроса задавать название файла? Подгружались бы данные из определенной ячейки. Из яцейки Н3 и подставлялось значение в название файла.

Автор - YH96
Дата добавления - 29.08.2020 в 16:33
Pelena Дата: Суббота, 29.08.2020, 17:34 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19404
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
За имя файла отвечает параметр
[vba]
Код
Filename:= Application.GetSaveAsFilename(FileFilter:="файл PDF, *.pdf")
[/vba]
попробуйте написать
[vba]
Код
Filename:= ThisWorkbook.Path & "\" & Range("H3") & ".pdf"
[/vba]
правда в именах файлов не допускается знак /, тогда можно так
[vba]
Код
ThisWorkbook.Path & "\" & Replace(Range("H3"), "/", "_") & ".pdf"
[/vba]
или используйте в Н3 только допустимые символы


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
За имя файла отвечает параметр
[vba]
Код
Filename:= Application.GetSaveAsFilename(FileFilter:="файл PDF, *.pdf")
[/vba]
попробуйте написать
[vba]
Код
Filename:= ThisWorkbook.Path & "\" & Range("H3") & ".pdf"
[/vba]
правда в именах файлов не допускается знак /, тогда можно так
[vba]
Код
ThisWorkbook.Path & "\" & Replace(Range("H3"), "/", "_") & ".pdf"
[/vba]
или используйте в Н3 только допустимые символы

Автор - Pelena
Дата добавления - 29.08.2020 в 17:34
YH96 Дата: Суббота, 29.08.2020, 21:41 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуйте.
Спасибо за помощ.
Я сделал так:
Цитата
Sub Macros1()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" & Range("H3") & ".pdf" _
, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub

Данный Excel фаил находиться у меня в облачном хранилище (OneDrive) и при запуске макроса, фаил сохраняеться в PDF с правильным названием ( взятым из ячейки Н3), но при сохранении не предлогаеться выбрать папку куда будет сохранен PDF фаил, а просто сохраняет его в туже папку где находиться исходный Excel фаил с макросом.
Можно ли сделать, что бы макрос еще предлогал выбрать в какой папке сохранить PDF фаил?
 
Ответить
СообщениеЗдравствуйте.
Спасибо за помощ.
Я сделал так:
Цитата
Sub Macros1()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" & Range("H3") & ".pdf" _
, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub

Данный Excel фаил находиться у меня в облачном хранилище (OneDrive) и при запуске макроса, фаил сохраняеться в PDF с правильным названием ( взятым из ячейки Н3), но при сохранении не предлогаеться выбрать папку куда будет сохранен PDF фаил, а просто сохраняет его в туже папку где находиться исходный Excel фаил с макросом.
Можно ли сделать, что бы макрос еще предлогал выбрать в какой папке сохранить PDF фаил?

Автор - YH96
Дата добавления - 29.08.2020 в 21:41
Pelena Дата: Суббота, 29.08.2020, 21:52 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19404
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
YH96, код надо оформлять тегами с помощью кнопки #, а не цитатой. Исправьте.

По теме: тогда Вам надо диалог выбора папки. Посмотрите здесь третий пример


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеYH96, код надо оформлять тегами с помощью кнопки #, а не цитатой. Исправьте.

По теме: тогда Вам надо диалог выбора папки. Посмотрите здесь третий пример

Автор - Pelena
Дата добавления - 29.08.2020 в 21:52
YH96 Дата: Суббота, 29.08.2020, 21:57 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Pelena, спасибо за помощь.
Третий пример это
[vba]
Код
   Sub example_03() 'msoFileDialogFolderPicker  
    Dim Fold As String, f As String  
    With Application.FileDialog(msoFileDialogFolderPicker)  
     .Title = "Select the folder in which the files to be processed"  
     .ButtonName = "Select": .AllowMultiSelect = False  
     If .Show Then Fold = .SelectedItems(1) Else Exit Sub  
    End With  
      
    If Right(Fold, 1) <> "\" Then Fold = Fold & "\"  
    f = Dir(Fold & "*.xls*", vbNormal)  
    Do While f <> ""  
     MsgBox f  
     f = Dir()  
    Loop  
    End Sub  
[/vba]
Но куда именно его в макросе вставлять ? :'(
Я не очень силен в Макросах %)
 
Ответить
СообщениеPelena, спасибо за помощь.
Третий пример это
[vba]
Код
   Sub example_03() 'msoFileDialogFolderPicker  
    Dim Fold As String, f As String  
    With Application.FileDialog(msoFileDialogFolderPicker)  
     .Title = "Select the folder in which the files to be processed"  
     .ButtonName = "Select": .AllowMultiSelect = False  
     If .Show Then Fold = .SelectedItems(1) Else Exit Sub  
    End With  
      
    If Right(Fold, 1) <> "\" Then Fold = Fold & "\"  
    f = Dir(Fold & "*.xls*", vbNormal)  
    Do While f <> ""  
     MsgBox f  
     f = Dir()  
    Loop  
    End Sub  
[/vba]
Но куда именно его в макросе вставлять ? :'(
Я не очень силен в Макросах %)

Автор - YH96
Дата добавления - 29.08.2020 в 21:57
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!