Excel VBA Зберегти як

Якщо ви часто користуєтеся програмою Microsoft Excel, ви, мабуть, використовували функцію "Зберегти як" під нею, яка дозволяє зберегти відкриту в даний час робочу книгу з іншим іменем або іншим форматом (з підтримкою Excel Macro, CSV, PDF тощо). Ви також можете зберегти файл у іншій папці за допомогою цього методу. Однак чи можна використовувати ту саму функцію в VBA? Відповідь абсолютна Так! Ми також функціонуємо Save As в VBA, що допомагає нам виконувати всі ці вищезазначені завдання разом з деякими додатковими перевагами (очевидно, автоматизація речей є однією з переваг). У цій статті ми розглянемо різні приклади функції VBA SAVE AS.

Формула для функції "Зберегти як" в Excel VBA

Давайте розглянемо нижче формулу функції збереження як у VBA.

Де,

  • Назва файлу - назва робочої книги, яку потрібно зберегти.
  • FileFormat - формат файлу, у якому файл потрібно зберегти (напр. Pdf, CSV тощо)
  • Пароль - пароль для захисту книги (до книги не можна отримати доступ без пароля)
  • WriteResPassword - Напишіть пароль резервування робочої книги.
  • ReadOnlyRecommended - розпізнає, збережена чи робоча книга у форматі лише для читання.
  • CreateBackup - визначає, створюється чи ні резервний файл для робочої книги.
  • AccessMode - розпізнає режим доступу до робочої книги.
  • ConflictResolution - розпізнає конфлікти, що виникають під час спільного використання робочої книги та використовуються більш ніж одним користувачем.
  • AddToMru - перевіряє, чи додана робоча книга під нещодавно використаний файл чи ні.
  • Місцевий - перевіряє збереження робочої книги законами Excel (місцева мова) або законами VBA (США - англійська мова).

Тиші! Багато аргументів правильно? Але що робити, якщо я вам скажу, всі ці аргументи необов’язкові і їх можна пропустити під час використання функції VBA SAVE AS. Однак це правда, що це аргументи, які роблять VBA SaveAs більш гнучким у використанні. "Вираз" на початку синтаксису - це не що інше, як вираз, проти якого можна використовувати цю функцію. Як Workbook - це вираз, проти якого можна використовувати SaveAs.

Приклади збереження файлу Excel за допомогою функції VBA Save As

Нижче наведено різні приклади збереження файлу Excel за допомогою функції VBA Save As.

Ви можете завантажити цей шаблон VBA Save As Excel тут - VBA Save As Excel Template

Приклад №1 - Як зберегти копію робочої книги з іншим іменем?

Давайте подивимось, як ми можемо зберегти поточну робочу книжку з іншою назвою.

Для використання функції "Зберегти як функцію" в Excel VBA виконайте наведені нижче дії:

Крок 1. Додайте новий модуль в Visual Basic Editor (VBE). Перейдіть до вставки та виберіть модуль.

Крок 2: Визначте нову підпроцедуру, яка може зберігати макрос.

Код:

 Sub SaveAs_Ex1 () Кінець Sub 

Крок 3: Визначте нову змінну, яка може містити ім'я, під яким файл буде збережено.

Код:

 Sub SaveAs_Ex1 () Dim newName As String End Sub 

Крок 4: Тепер використовуйте оператор призначення, щоб призначити ім'я цій змінній, використовуючи який поточний файл можна зберегти як.

Код:

 Sub SaveAs_Ex1 () Dim newName As String newName = "Example1" End Sub 

Крок 5: Тепер використовуйте функцію SaveAs з аргументом FileName, щоб зберегти файл як з назвою "Example1".

Код:

 Sub SaveAs_Ex1 () Dim newName As String newName = "Example1" ActiveWorkbook.SaveAs Ім'я файлу: = newName End Sub 

Крок 6: Це все, тепер запустіть цей код, натиснувши F5 або вручну за допомогою кнопки Run і подивіться вихід.

Ви можете бачити, що файл із назвою " Example1 " зберігається в " Документах" .

Якщо ви могли зауважити, файл зберігається як файл з підтримкою макросу, тому що оригінальний файл, на якому я використовував функцію SaveAs, - це файл із включеним макросом. Це означає, що ця функція в VBA автоматично перевіряє формат файлу попереднього файлу і зберігає його в тому ж форматі. Також за замовчуванням файл буде збережено в Документах під цим ПК . Це місце за замовчуванням може бути надано явно під час визначення назви аркуша.

Приклад №2 - Збереження робочої книги з ім'ям користувача

Замість того, щоб спочатку визначати ім'я, чи можна написати код, який дозволяє користувачеві зберігати робочий аркуш на ім'я, яке він обрав, як функцію Excel Save As?

Для використання функції "Зберегти як" в Excel VBA виконайте наведені нижче дії.

Крок 1. Визначте нову підпроцедуру під нещодавно вставленим модулем, який може зберігати макрос.

Код:

 Sub SaveAs_Ex2 () Кінець Sub 

Крок 2: Визначте нову змінну, яка може містити значення визначеного користувачем імені.

Код:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name як варіант варіанту Кінець Sub 

Причиною того, що ця змінна визначається як Варіантна, цей тип даних робить універсальні конвенції іменування. Наприклад, користувач може додати якийсь додатковий спеціальний символ (який дозволений у конвенціях іменування) або також може додавати дати під іменем файлу.

Крок 3: Тепер за допомогою оператора призначення та комбінації функцій, який називається application.GetSaveAsFilename, зробіть заяву, яка дозволяє системі приймати визначене користувачем ім'я. Подивіться, як це досягнуто на скріншоті нижче.

Код:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name як варіант Spreadsheet_Name = Application.GetSaveAsFilename Кінець Sub 

Крок 4: Використовуйте умовний IF, щоб переконатися, що ім’я користувача введено, чи дійсне згідно з умовами іменування.

Код:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name як варіант Spreadsheet_Name = Application.GetSaveAsFilename Якщо Spreadsheet_Name False then End Sub 

Ця умова перевіряє, чи ім'я, яке дається користувачем для збереження робочого листа, належним чином відповідає умовам іменування, встановленим для іменування файлу чи ні.

Крок 5: Запишіть заяву, яка оцінюється для даної умови IF.

Код:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name як варіант Spreadsheet_Name = Application.GetSaveAsFilename Якщо Spreadsheet_Name False then ActiveWorkbook.SaveAs Ім'я файлу: = Spreadsheet_Name End Sub 

Цей фрагмент коду оцінюється, коли ця умова є правдою. Якщо так, активна робоча книга буде збережена під ім'ям, визначеним у змінній Spreadsheet_Name (Що буде визначено користувачем)

Крок 6: Закінчіть цикл IF та запустіть цей код, щоб побачити вихід.

Код:

 Sub SaveAs_Ex2 () Dim Spreadsheet_Name як варіант Spreadsheet_Name = Application.GetSaveAsFilename Якщо Spreadsheet_Name False then ActiveWorkbook.SaveAs Ім'я файлу: = Spreadsheet_Name End If End Sub 

Крок 7: Як тільки ви запустите цей код, ви отримаєте діалогове вікно "Зберегти як", яке дозволить вам ввести ім'я, яке ви обрали, та зберегти файл.

Приклад №3 - Як зберегти як файл у PDF за допомогою функції Excel VBA SaveAs?

Припустимо, у вас на аркуші Excel є дані, наведені нижче, і вам потрібно конвертувати їх у PDF.

Виконайте наведені нижче дії для перетворення цього файлу у PDF за допомогою функції VBA Save As:

Крок 1: Визначте нову процедуру для зберігання макросу.

Код:

 Sub SaveAs_PDF_Ex3 () Кінець Sub 

Крок 2. Тепер скористайтеся наступним кодом, щоб зберегти цей файл у форматі PDF.

Код:

 Sub SaveAs_PDF_Ex3 () ActiveSheet.SaveAs Ім'я файлу: = "Vba Save as.pdf" Кінець Sub 

Крок 3: Запустіть цей код, і ви побачите файл PDF, згенерований під цим ПК> Документи.

У цьому коді ActiveSheet.SaveAs дозволяє зберегти файл з тим же ім’ям. Оскільки ми додали розширення як .pdf в кінці файлу, воно експортується у файл PDF. Ви можете побачити зображення вище для довідки.

Що потрібно пам’ятати

  • Місцем збереження за замовчуванням для файлу, який використовується у VBA SaveAs, буде цей ПК> Документи. Однак ви можете вказати каталог вручну під час визначення імені файлу.
  • За замовчуванням файл, збережений за допомогою VBA SaveAs, буде збережений у форматі, такому ж, як у вихідному файлі. Однак він також може бути визначений відповідно до вимог користувача під час визначення змінної.

Рекомендовані статті

Це посібник із VBA Save As. Тут ми обговорюємо, як зберегти файл за допомогою функції Excel VBA Save As разом із прикладом та шаблоном Excel, який можна завантажити. Нижче наведено кілька корисних статей Excel, пов’язаних із VBA -

  1. Вихід VBA Sub
  2. Створіть електронну таблицю в Excel
  3. Об'єкт VBA
  4. Excel Autosave

Категорія: