Vba сохранить файл как
Перейти к содержимому

Vba сохранить файл как

  • автор:

Метод Workbook.Save (Excel)

Выражение Переменная, представляющая объект Workbook .

Замечания

Чтобы открыть файл книги, используйте метод Open .

Чтобы пометить книгу как сохраненную, не записывая ее на диск, задайте для свойства Сохранено значение True.

При первом сохранении книги используйте метод SaveAs , чтобы указать имя файла.

Пример

В этом примере сохраняется активная книга.

ActiveWorkbook.Save 

В этом примере сохраняются все открытые книги, а затем закрывается Microsoft Excel.

For Each w In Application.Workbooks w.Save Next w Application.Quit 

В этом примере событие BeforeSave используется для проверки того, что определенные ячейки содержат данные перед сохранением книги. Книгу нельзя сохранить, пока в каждой из следующих ячеек не будут содержаться данные: D5, D7, D9, D11, D13 и D15.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) 'If the six specified cells don't contain data, then display a message box with an error 'and cancel the attempt to save. If WorksheetFunction.CountA(Worksheets("Sheet1").Range("D5,D7,D9,D11,D13,D15")) < 6 Then MsgBox "Workbook will not be saved unless" & vbCrLf & _ "All required fields have been filled in!" Cancel = True End If End Sub 

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Обратная связь

Были ли сведения на этой странице полезными?

Сохранение книги Excel с названием файла из ячейки через VBA

Имеется определенный шаблон куда записываются данные и нужно часто сохранять эту заполненную таблицу Excel в папку, например с накладными. Чтобы избежать рутину по написанию имен файла вручную, можно сделать так, чтобы файл сохранялся с именем из заполненных ячеек.

Изначальный шаблон с ячейками, после сохранения, должен оставаться неизменным, т.е. в папку сохраняется его копия с измененными данными в ячейках. То же самое, если нажали бы "Файл" - "Сохранить как. "

01 Имеем шалон, в котором я выделил красным те ячейки, которые заполнил и хочу чтобы из них формировалось новое имя для сохранения файла excel.

02 После того как нажали кнопку "Сохранить накладную", заходим в папку с сохраненным файлом и смотрим его имя. Сейчас оно у меня выглядит "01 Монтаж, -Рога-Копыта-, ул. Пушкина, дом Калатушкина-17-28 - -02-"

В имени файла не могут присутствовать запрещенные символы, такие как ""/ и т.д. Поэтому применили функцию автозамены запрещенных символов в имени файла на "-"

Код VBA Excel модуль с комментариями:

Function Replace_symbols(ByVal txt As String) As String 'Убираем запрещённые в именах файлов символы! Dim st$, i& 'Ковычки и слэши в данном случае! st$ = "/""" For i& = 1 To Len(st$) 'Заменяем их на тире "-" txt = Replace(txt, Mid(st$, i, 1), "-") Next Replace_symbols = txt End Function Sub SaveMe() 'Где будет сохраняться ПутьКПапке = "S:\Рабочий стол\СКЛАД\Расходные накладные по складу\2017\Январь\" 'С какого листа берется имя для файла With Worksheets("Лист1") 'Имя_для_сохранения начинается со слова в ячейке [I8] Имя_для_сохранения = .[I8] End With 'Следующие слова в имени сохранения файла после [I8], берутся из следющих ячеек, с заменой запрещенных символов из функции Replace_symbols ActiveWorkbook.SaveAs ПутьКПапке & Replace_symbols([G2]) & " " & Имя_для_сохранения & ", " & Replace_symbols([D10]) & ", " & Replace_symbols([H10]) & " - " & Replace_symbols([M8]) & ".xlsm" MsgBox "Накладная сохранена в папке расходных накладных!" End Sub

*Названия листов, пути для сохранения, имена ячеек меняем на свои.

Vba сохранить файл как

Добрый день, уважаемые знатоки VBA!

Подскажите, пожалуйста, код для макроса, со следующей логикой:
При нажатии условной "кнопки" файл, в модуле которого есть этот макрос, сохраняется через функцию "Сохранить как" с именем исходного файла + текущей датой, в той же самой папке.
Пример не прикладываю, т.к. ответ на вопрос не зависит от содержимого книги.

Заранее благодарю всех откликнувшихся!

Добрый день, уважаемые знатоки VBA!

Подскажите, пожалуйста, код для макроса, со следующей логикой:
При нажатии условной "кнопки" файл, в модуле которого есть этот макрос, сохраняется через функцию "Сохранить как" с именем исходного файла + текущей датой, в той же самой папке.
Пример не прикладываю, т.к. ответ на вопрос не зависит от содержимого книги.

Заранее благодарю всех откликнувшихся! ArkaIIIa

Сообщение Добрый день, уважаемые знатоки VBA!

Подскажите, пожалуйста, код для макроса, со следующей логикой:
При нажатии условной "кнопки" файл, в модуле которого есть этот макрос, сохраняется через функцию "Сохранить как" с именем исходного файла + текущей датой, в той же самой папке.
Пример не прикладываю, т.к. ответ на вопрос не зависит от содержимого книги.

Заранее благодарю всех откликнувшихся! Автор - ArkaIIIa
Дата добавления - 07.10.2014 в 12:59

Как сохранить Excel в формате PDF с помощью VBA [коды предоставлены]

Вам нужно сохранить таблицу Excel в формате PDF? Это можно сделать с помощью языка программирования VBA. Вот руководство, в котором вы можете использовать VBA для сохранения Excel в формате PDF, чтобы узнать, как это сделать.

Василий Лебедев

Василий Лебедев

Иногда вам необходимо преобразовать файлы Excel в PDF. Например, при отправке файлов коллегам или начальству. Вы можете отправить файл в формате Excel. Однако презентация будет лучше и профессиональнее, если она будет в формате PDF. Но как можно преобразовать файлы Excel в PDF? Вы можете сохранить это в формате PDF используяVBA.

В этой статье вы узнаете, как это сделать.

создание нового pdf на pdf-элементе

В этой статье

Часть 1. Что такое VBA?

VBA расшифровывается как "Visual Basic for Applications". Корпорация Microsoft разработала этот язык программирования и интегрировала его в приложения MS Office. Он позволяет получить доступ к функциям, выходящим за рамки того, что предлагают такие приложения, как MS Excel. Кроме того, VBA позволяет настраивать приложения в соответствии с вашими конкретными потребностями.

Microsoft писал программы MS Office с использованием VBA. А VBA работает как внутренний язык программирования в этих программах. Таким образом, по сути, VBA позволяет вам "наследовать" полномочия разработчика. Он позволяет добавлять в программы MS Office функции, помогающие автоматизировать компьютерные процессы.

Но, конечно, сначала нужно знать, как писать код на языке программирования VBA.

Part 2. Как сохранить (распечатать) Excel в PDF с помощью VBA

VBA позволяет сохранять файлы Excel в формате PDF. То есть, если вы знаете правильные коды и как вводить коды VBA в Excel. Не все разбираются в этом вопросе. Не волнуйтесь. Мы вас прикроем. Below are the codes that you will need.

1. Сохранить активные листы Excel в формате PDF с помощью VBA

Предположим, что вам не нужно сохранять всю рабочую книгу в формате PDF. Сохранять нужно только активный лист или лист, который вы просматриваете в данный момент. Вот что вам следует сделать.

  1. Откройте рабочую книгу Excel с помощью MS Excel.
  2. Убедитесь, что вы просматриваете лист, который хотите сохранить в формате PDF.
  3. Нажмите "Alt + F11" на клавиатуре, чтобы открыть VBE (редактор Visual Basic).
  4. Найдите имя своей рабочей книги на панели "Project-VBAProject". Щелкните по нему правой кнопкой мыши.
  5. Нажмите "Вставить" > "Модуль".
  6. Вставьте этот код:

Dim saveLocation As String

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _

Примечание: Отредактируйте то, что находится в строке saveLocation. Укажите путь к папке, в которой будет храниться PDF. Также измените "myPDFFile.pdf" на желаемое имя файла.

  1. Нажмите "CTRL + S", чтобы сохранить рабочую книгу. Появится диалоговое окно. Нажмите "Нет".
  2. Нажмите на выпадающий список "Сохранить как тип" в диалоговом окне "Сохранить как". Выберите "Рабочая книга с поддержкой макросов Excel".
  3. Нажмите "Alt + Q".
  4. Откройте рабочую книгу с макросами, которую вы только что создали. Нажмите "Alt+F8".
  5. Выберите макрос, который вы создали ранее > нажмите "Запустить".
  6. Проверьте папку, указанную в коде, для поиска сгенерированного PDF-файла.

2. Использование VBA для сохранения активных рабочих книг Excel в формате PDF

Using VBA to save active Excel workbooks in PDF format Вот что вам следует сделать:

  1. Откройте рабочую книгу Excel с помощью MS Excel.
  2. Откройте VBE, нажав "Alt + F11".
  3. Найдите имя своей рабочей книги на панели "Project-VBAProject". Щелкните по нему правой кнопкой мыши.
  4. Нажмите "Вставить" > "Модуль".
  5. Вставьте этот код:

Dim saveLocation As String

ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, _

Примечание: Отредактируйте то, что находится в строке saveLocation. Укажите путь к папке, в которой будет храниться PDF. Также измените "myPDFFile.pdf" на желаемое имя файла.

  1. Нажмите "CTRL + S", чтобы сохранить рабочую книгу. Появится диалоговое окно. Нажмите "Нет".
  2. Нажмите на выпадающий список "Сохранить как тип" в диалоговом окне "Сохранить как". Выберите "Рабочая книга с поддержкой макросов Excel".
  3. Нажмите "Alt + Q".
  4. Откройте рабочую книгу с макросами, которую вы только что создали. Нажмите "Alt+F8".
  5. Выберите макрос, который вы создали ранее > нажмите "Запустить".
  6. Проверьте папку, указанную в коде, для поиска сгенерированного PDF-файла.

3. Сохранить выбранные части Excel в формате PDF

Теперь, что если вы не хотите сохранять всю рабочую тетрадь в формате PDF? Также не обязательно сохранять весь лист. Вы можете выбрать ячейки, которые необходимо включить в PDF. Выполните следующие действия:

  1. Откройте рабочую книгу Excel с помощью MS Excel.
  2. Выберите ячейки, которые должны появиться в PDF-файле.
  3. Откройте редактор Visual Basic, нажав "Alt + F11".
  4. Найдите имя вашей рабочей книги на панели "Project-VBAProject" и щелкните по нему правой кнопкой мыши.
  5. Нажмите "Вставить" > "Модуль".
  6. Вставьте этот код:

Dim saveLocation As String

Selection.ExportAsFixedFormat Type:=xlTypePDF, _

Примечание: Отредактируйте то, что находится в строке saveLocation. Укажите путь к папке, в которой будет храниться PDF. Также измените "myPDFFile.pdf" на желаемое имя файла.

  1. Нажмите "CTRL + S", чтобы сохранить рабочую книгу. Появится диалоговое окно. Нажмите "Нет".
  2. Нажмите на выпадающий список "Сохранить как тип" в диалоговом окне "Сохранить как". Выберите "Рабочая книга с поддержкой макросов Excel".
  3. Нажмите "Alt + Q".
  4. Откройте рабочую книгу с макросами, которую вы только что создали. Нажмите "Alt+F8".
  5. Выберите макрос, который вы создали ранее > нажмите "Запустить".
  6. Проверьте папку, указанную в коде, для поиска сгенерированного PDF-файла.

4. Сохраните каждый рабочий лист как отдельный PDF-файл

Что если вам нужно сохранить все листы в рабочей книге? Однако каждый лист должен быть отдельным PDF-файлом. Вы можете следовать методу сохранения активного листа в формате PDF для каждого листа. Но это займет слишком много времени. Вместо этого вы можете сделать следующее:

  1. Откройте рабочую книгу Excel с помощью MS Excel.
  2. Нажмите "Alt + F11", чтобы открыть VBE.
  3. Найдите имя вашей рабочей книги на панели "Project-VBAProject" и щелкните его правой кнопкой мыши.
  4. Нажмите "Вставить" > "Модуль".
  5. Вставьте этот код:

Dim ws As Worksheet

Для каждого ws в ActiveWorkbook.Worksheets

ws.ExportAsFixedFormat Type:=xlTypePDF, _

Filename:=ThisWorkbook.Path & "/" & ws.Name & ".pdf"

Примечание: Этот метод сохранит PDF-файлы в той же папке, что и рабочая книга. Что касается имен документов PDF, то они будут основаны на имени рабочей книги.

  1. Нажмите "CTRL + S", чтобы сохранить рабочую книгу. Появится диалоговое окно. Нажмите "Нет".
  2. Нажмите на выпадающий список "Сохранить как тип" в диалоговом окне "Сохранить как". Выберите "Рабочая книга с поддержкой макросов Excel".
  3. Нажмите "Alt + Q".
  4. Откройте рабочую книгу с макросами, которую вы только что создали. Нажмите "Alt+F8".
  5. Выберите макрос, который вы создали ранее > нажмите "Запустить".
  6. Проверьте папку, указанную в коде, для поиска сгенерированного PDF-файла.

Часть 3. Сохранить Excel в формате PDF без VBA

Сохранение рабочих книг Excel в формате PDF с помощью VBA - удивительная вещь. Вам понадобятся только две вещи: (1) установленный на вашем компьютере MS Excel и (2) знание языка программирования VBA.

Дело в том, что эти две вещи не очень доступны. Возможно, у вас нет лицензии на MS Excel, поэтому вы можете использовать его только для просмотра рабочих книг. Онлайн-версия не позволяет использовать макросы. Если говорить о самих макросах, то не все могут их писать. Поэтому вы будете искать в Интернете коды VBA, написанные другими.

Вот предложение. Используйте программное обеспечение PDF для преобразования файлов Excel в файлы PDF. Это намного проще. Кроме того, у вас будет инструмент, который вы сможете использовать для редактирования создаваемых PDF-файлов.

Wondershare PDFelement - упрощение конвертации Excel в PDF

Wondershare PDFelement - Редактор PDF-файлов является одной из самых популярных программ для работы с PDF. Можно сказать, что это домашнее имя. Эта программа позволяет редактировать, объединять, сжимать, конвертировать PDF-файлы и многое другое. Время доказало, насколько надежен PDFelement. Помимо сложных функций, это программное обеспечение может похвастаться простым в использовании интерфейсом.

Вы можете использовать PDFelement для преобразования рабочих книг Excel в файлы PDF.

Преобразование Excel в PDF с помощью Wondershare PDFelement

Выполните следующие шаги, чтобы преобразовать файл Excel в PDF.

  1. Установите и откройте PDFelement.
  2. Нажмите "Открыть PDF" > "Из файла".

создание нового pdf на pdf-элементе

  1. Выберите файл Excel, который необходимо преобразовать в PDF.

выбор файла excel для преобразования

  1. PDFelement автоматически преобразует файл. Затем откроется созданный PDF. Просмотрите PDF-файл.

pdf, созданный из xlsx с помощью pdfelement

  1. Сохраните файл, нажав "CTRL + S" на клавиатуре или нажав "Файл" > "Сохранить" или кнопку "Сохранить" на верхней панели инструментов.

сохранение pdf в pdf-элементе

Помимо преобразования Excel в PDF, вы также можете использовать PDFelement для преобразования PDF в Excel, Word, изображения или другие форматы файлов Microsoft Office. Посмотрите видео ниже, чтобы узнать больше:

You can't save Excel Workbooks as PDF files using MS Excel. По крайней мере, если вы не знаете, как использовать коды VBA для добавления этой функции. Но это непросто, даже если вы знаете о возможностях редактора Visual Basic, встроенного в MS Excel. Вам нужно знать, как кодировать с помощью VBA или изучить, какие коды нужно вводить на VBE.

Таким образом, использование программного обеспечения PDF, такого как PDFelement, для преобразования файлов Excel в PDF является разумным. Он упрощает процесс преобразования, позволяя вам легче превращать файлы Excel в PDF. В качестве бонуса на вашем устройстве будет установлен замечательный инструмент для работы с PDF.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *