Saveas vba excel параметры: Метод Workbook.SaveAs (Excel) | Microsoft Learn

Метод Workbook.SaveAs (Excel) | Microsoft Learn





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья

  • Чтение занимает 3 мин

Сохраняет изменения в книге в другом файле.

Примечание.

Хотите создавать решения, которые расширяют возможности Office на разнообразных платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office занимают меньше места по сравнению с надстройками и решениями VSTO, и вы можете создавать их, используя практически любую технологию веб-программирования, например HTML5, JavaScript, CSS3 и XML.

Синтаксис

expression. SaveAs (FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)

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

Параметры

ИмяОбязательный или необязательныйТип данныхОписание
FileNameНеобязательныйVariantСтрока, указывающая имя сохраняемого файла. Можно включить полный путь; В противном случае Microsoft Excel сохранит файл в текущей папке.
FileFormatНеобязательныйVariantФормат файла, используемый при сохранении файла. Список допустимых вариантов см. в перечислении XlFileFormat . Для существующего файла форматом по умолчанию является последний указанный формат файла; Для нового файла по умолчанию используется формат используемой версии Excel.
PasswordНеобязательныйVariantСтрока с учетом регистра (не более 15 символов), указывающая пароль защиты, который будет присвоен файлу.
WriteResPasswordНеобязательныйVariantСтрока, указывающая пароль резервирования записи для этого файла. Если файл сохраняется с паролем и пароль не предоставляется при открытии файла, он открывается только для чтения.
ReadOnlyRecommendedНеобязательныйVariantЗначение true для отображения сообщения при открытии файла, в котором рекомендуется открыть файл только для чтения.
CreateBackupНеобязательныйVariantЗначение True для создания файла резервной копии.
AccessModeНеобязательныйXlSaveAsAccessModeРежим доступа к книге.
ConflictResolutionНеобязательныйXlSaveConflictResolutionЗначение XlSaveConflictResolution , определяющее, как метод разрешает конфликт при сохранении книги. Если задано значение xlUserResolution, отображается диалоговое окно разрешения конфликтов.

Если задано значение xlLocalSessionChanges, изменения локального пользователя принимаются автоматически.

Если задано значение xlOtherSessionChanges, изменения из других сеансов автоматически принимаются вместо изменений локального пользователя.

Если этот аргумент опущен, отобразится диалоговое окно разрешения конфликтов.

AddToMruНеобязательныйVariantЗначение true , чтобы добавить эту книгу в список недавно использовавшихся файлов. Значение по умолчанию — False.
TextCodepageНеобязательныйVariantИгнорируется для всех языков в Microsoft Excel.

ПРИМЕЧАНИЕ. Когда Excel сохраняет книгу в одном из форматов CSV или текста, указанных с помощью параметра FileFormat , он использует кодовую страницу, соответствующую языку системного языкового стандарта, используемого на текущем компьютере. Этот системный параметр доступен на вкладке панель управления>Регион и расположение языка> в разделе Текущее расположение.

TextVisualLayoutНеобязательныйVariantИгнорируется для всех языков в Microsoft Excel.

ПРИМЕЧАНИЕ. Когда Excel сохраняет книгу в одном из форматов CSV или текста, указанных с помощью параметра FileFormat , эти форматы сохраняются в логическом макете. Если текст слева направо (LTR) внедрен в текст справа налево (RTL) в файле или наоборот, логическая разметка сохраняет содержимое файла в правильном порядке чтения для всех языков в файле без учета направления. Когда приложение открывает файл, каждый запуск символов LTR или RTL отображается в правильном направлении в соответствии с диапазонами значений символов на кодовой странице (если только приложение, предназначенное для отображения точного макета памяти файла, например отладчик или редактор, не используется для открытия файла).

LocalНеобязательныйVariantЗначение True сохраняет файлы на языке Microsoft Excel (включая параметры панели управления). Значение False (по умолчанию) сохраняет файлы на языке Visual Basic для приложений (VBA) (как правило, на английском языке США, если проект VBA, из которого выполняется Workbooks. Open, не является старым проектом VBA с интернационализацией XL5/95).

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

  • Надежный пароль: Y6dh!et5
  • Ненадежный пароль: House27

Используйте надежный пароль, который можно запомнить, чтобы не пришлось его записывать.

Пример

В этом примере создается новая книга, запрашивается имя файла, а затем она сохраняется.

Set NewBook = Workbooks.Add 
Do 
    fName = Application.GetSaveAsFilename 
Loop Until fName <> False 
NewBook.SaveAs Filename:=fName

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

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






Метод Worksheet.

SaveAs (Excel) | Microsoft Learn





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья

  • Чтение занимает 2 мин

Сохраняет изменения на диаграмме или листе в другом файле.

Синтаксис

expression. SaveAs (FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AddToMru, TextCodepage, TextVisualLayout, Local)

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

Параметры

ИмяОбязательный или необязательныйТип данныхОписание
FileNameОбязательныйStringVariant. Строка, указывающая имя сохраняемого файла. Можно включить полный путь; В противном случае Microsoft Excel сохранит файл в текущей папке.
FileFormatНеобязательныйVariantФормат файла, используемый при сохранении файла. Список допустимых вариантов см. в перечислении XlFileFormat . Для существующего файла форматом по умолчанию является последний указанный формат файла; Для нового файла по умолчанию используется формат используемой версии Excel.
PasswordНеобязательныйVariantСтрока с учетом регистра (не более 15 символов), указывающая пароль защиты, который будет присвоен файлу.
WriteResPasswordНеобязательныйVariantСтрока, указывающая пароль резервирования записи для этого файла. Если файл сохраняется с паролем и пароль не предоставляется при открытии файла, он открывается только для чтения.
ReadOnlyRecommendedНеобязательныйVariantЗначение true для отображения сообщения при открытии файла, в котором рекомендуется открыть файл только для чтения.
CreateBackupНеобязательныйVariantЗначение True для создания файла резервной копии.
AddToMruНеобязательныйVariantЗначение true , чтобы добавить эту книгу в список недавно использовавшихся файлов. Значение по умолчанию — False.
TextCodepageНеобязательныйVariantНе используется в Microsoft Excel на английском языке США.
TextVisualLayoutНеобязательныйVariantНе используется в Microsoft Excel на английском языке США.
LocalНеобязательныйVariantЗначение True сохраняет файлы на языке Excel (включая параметры панели управления). Значение False (по умолчанию) сохраняет файлы на языке Visual Basic для приложений (VBA) (как правило, на английском языке США, если проект VBA, из которого выполняется Workbooks.Open, не является старым проектом VBA с интернационализацией XL5/95).

Используйте надежные пароли, содержащие строчные и прописные буквы, цифры и знаки. В слабых паролях эти элементы не комбинируются. Надежный пароль: Y6dh!et5. Слабый пароль: House27. Используйте надежный пароль, который можно запомнить, чтобы не пришлось его записывать.

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

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






перечисление XlFileFormat (Excel) | Microsoft Узнайте

Редактировать

Твиттер

LinkedIn

Фейсбук

Электронная почта

  • Статья
  • 2 минуты на чтение

Указывает формат файла при сохранении рабочего листа.

Имя Значение Описание Внутренний номер
xlAddIn 18 Надстройка Microsoft Excel 97-2003 *.xla
xlAddIn8 18 Надстройка Microsoft Excel 97-2003 *.xla
XLCSV 6 CSV *.csv
кслксвмак 22 Макинтош CSV *.csv
кслксвмСДОС 24 МСДОС CSV *.csv
xlCSVUTF8 62 UTF8 CSV *.csv
xlCSVWindows 23 Windows CSV *. csv
кслкуррентплатформтекст -4158 Текст текущей платформы *.txt
XLDBF2 7 Формат базы данных 2 *.dbf
xlDBF3 8 Формат базы данных 3 *.dbf
XLDBF4 11 Формат базы данных 4 *.dbf
XLDIF 9 Формат обмена данными *.диф
xlExcel12 50 Двоичная книга Excel *.xlsb
xlExcel2 16 Excel, версия 2.0 (1987 г.) *.XLS
xlExcel2FarEast 27 Excel версия 2.0 Дальний Восток (1987) *.XLS
xlExcel3 29 Excel, версия 3. 0 (1990 г.) *.XLS
xlExcel4 33 Excel, версия 4.0 (1992 г.) *.XLS
xlExcel4Workbook 35 Excel версии 4.0. Формат рабочей тетради (1992 г.) *.XLW
xlExcel5 39 Excel, версия 5.0 (1994 г.) *.XLS
xlExcel7 39 Excel 95 (версия 7.0) *.XLS
xlExcel8 56 Excel 97-2003 Рабочая тетрадь *.XLS
xlExcel9795 43 Excel версии 95 и 97 *.XLS
XLHTML 44 Формат HTML *.htm; *.html
xlIntlAddIn 26 Международная надстройка Нет расширения файла
кслинтлмакрос 25 Международный макрос Нет расширения файла
xlOpenDocumentSpreadsheet 60 Электронная таблица OpenDocument *. ods
xlOpenXMLAddIn 55 Надстройка Open XML *.xlam
xlOpenXMLStrictWorkbook 61 (&h4D) Строгий файл Open XML *.xlsx
xlOpenXMLTemplate 54 Шаблон Open XML *.xltx
xlOpenXMLTemplateMacroEnabled 53 Макрос шаблона Open XML включен *.xltm
xlOpenXMLWorkbook 51 Рабочая книга Open XML *.xlsx
xlOpenXMLWorkbookMacroEnabled 52 Макрос рабочей книги Open XML включен *.xlsm
XLSYLK 2 Формат символической ссылки *.slk
xlTemplate 17 Формат шаблона Excel *. xlt
xlTemplate8 17 Шаблон 8 *.xlt
xlTextMac 19 Макинтош Текст *.txt
кслтекстМСДОС 21 Текст MS-DOS *.txt
кслтекстпринтер 36 Текст принтера *.prn
xlTextWindows 20 Текст Windows *.txt
xlUnicodeText 42 Текст Юникода Нет расширения файла; *.txt
кслвебархив 45 Веб-архив *.mht; *.mhtml
XLWJ2WD1 14 Японский 1-2-3 *.wj2
XLWJ3 40 Японский 1-2-3 *. wj3
xlWJ3FJ3 41 Японский формат 1-2-3 *.wj3
XLWK1 5 Формат Lotus 1-2-3 *.wk1
XLWK1ALL 31 Формат Lotus 1-2-3 *.wk1
XLWK1FMT 30 Формат Lotus 1-2-3 *.wk1
XLWK3 15 Формат Lotus 1-2-3 *.wk3
XLWK3FM3 32 Формат Lotus 1-2-3 *.wk3
XLWK4 38 Формат Lotus 1-2-3 *.wk4
XLWKS 4 Формат Lotus 1-2-3 *.wks
xlWorkbookDefault 51 Рабочая книга по умолчанию *. xlsx
xlWorkbookNormal -4143 Обычная рабочая тетрадь *.XLS
xlWorks2FarEast 28 Microsoft Works 2.0 дальневосточный формат *.wks
XLWQ1 34 Формат Quattro Pro *.wq1
Таблица xlXML 46 XML-таблица *.xml

Поддержка и отзывы

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

Как сделать «Сохранить как» в коде vba, сохранив мою текущую книгу Excel с отметкой даты?

спросил

Изменено
8 месяцев назад

Просмотрено
515 тысяч раз

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

Я продолжаю пробовать следующее
ActiveWorkbook.SaveAs ("\\filePath\FormFlow To MSExcel\" & Left(Now(), 10)) , но я получаю Ошибка выполнения «1004»: метод «Сохранить как» объекта «_Workbook» не выполнен.

Может ли кто-нибудь помочь мне с этим? Я все еще очень новичок в разработке для Excel.

  • excel
  • excel-2007
  • архив
  • сохранить
  • vba

Скорее всего, путь, к которому вы пытаетесь получить доступ, не существует. Кажется, вы пытаетесь сохранить в относительном месте, и у вас нет расширения файла в этой строке. Если вам нужно использовать относительные пути, вы можете проанализировать путь из ActiveWorkbook.FullName

РЕДАКТИРОВАТЬ:
Лучший синтаксис также будет

 ActiveWorkbook.SaveAs Filename:=myFileName, FileFormat:=xlWorkbookNormal
 

5

Самый простой способ использовать эту функцию — начать с «Записи макроса». Как только вы начнете запись, сохраните файл в нужном месте с нужным именем, а затем, конечно, установите тип файла, скорее всего, «Excel Macro Enabled Workbook» ~ «XLSM»

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

Я написал приведенный ниже код, который позволяет сохранить книгу, используя путь, по которому изначально находился файл, назвав его «Событие [дата в ячейке «A1»]»

 Параметр Явный
Подпрограмма сохранения файла ()
Dim fdate как дата
Dim fname как строка
Тусклый путь как строка
fdate = Диапазон ("A1"). Значение
путь = Application.ActiveWorkbook.path
Если дата > 0 Тогда
    fname = "Событие" & fdate
    Application.ActiveWorkbook.SaveAs Имя файла:=путь & "\" & fname, _
        FileFormat: = xlOpenXMLWorkbookMacroEnabled, CreateBackup: = False
Еще
    MsgBox "Выберите дату события", vbOKOnly
Конец, если
Конец сабвуфера
 

Скопируйте код в новый модуль, а затем напишите дату в ячейке «A1», например. 01-01-2016 -> назначьте сабвуфер на кнопку и запустите. [Примечание] вам необходимо создать файл сохранения, прежде чем этот скрипт заработает, потому что новая книга сохраняется в местоположении автосохранения по умолчанию!

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

 With someWorkbook
.SaveAs "C:\someDirector\Awesome.xlsm", формат файла:=xlOpenXMLWorkbookMacroEnabled
Конец с
 

OTOH, я не вижу расширения в вашем имени файла .SaveAs. Возможно, вам нужно предоставить его, когда вы делаете это программно. Это имеет смысл — не нужно предоставлять расширение из интерфейса GUI, это удобно, но мы, программисты, должны писать недвусмысленный код. Я предлагаю добавить расширение и соответствующий формат. См. эту страницу msdn для списка форматов файлов. Честно говоря, я не узнаю много описаний.

xlExcel8 = 56 — это формат .xls

xlExcel12 = 50 — формат .xlsb

xlOpenXMLWorkbook = 51 — формат . xlsx

xlOpenXMLWorkbookMacroEnabled = 52 — формат .xlsm формат по умолчанию может быть изменен.

2

Я успешно использую следующий метод в одном файле,

Но снова получаю точно такую ​​же ошибку…
Только последняя строка выдает ошибку

 Новый путь = Середина (ThisWorkbook.FullName, 1, _
 Len(ThisWorkbook.FullName) - Len(ThisWorkbook.Name)) & "\" & "ABC - " & Format(Date, "dd-mm-yyyy") & ".xlsm"
ThisWorkbook.SaveAs (новый путь)
 

Я боролся, но нижеприведенное наконец сработало!

 Dim WB As Workbook
Установите WB = Workbooks.Open("\\users\path\Desktop\test.xlsx")
WB.SaveAs имя_файла:="\\users\path\Desktop\test.xls", _
        Формат файла:=xlExcel8, пароль:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
 
 Dim NuevoLibro как рабочая тетрадь
Dim NombreLibro As String
    NombreLibro = "LibroPrueba"
'---Creamos nuevo libro y lo guardamos
    Установить NuevoLibro = Workbooks. Add
        С NuevoLibro
            .SaveAs Имя файла: = NuevaRuta & NombreLibro, Формат файла: = 52
        Конец с
                                                    '*********************************
                                                        'значения для FileFormat
                                                        '.xlsx = 51' (52 для Mac)
                                                        '.xlsm = 52' (53 для Mac)
                                                        '.xlsb = 50' (51 для Mac)
                                                        '.xls = 56' (57 для Mac)
                                                    '*********************************
 

1

При работе с большим объемом данных , где требуется рабочая книга .xlsx , используйте следующий синтаксис

 ActiveWorkbook.SaveAs Filename:=myFileName, FileFormat:=51
" /" в этом.