Сохранить файл excel vba без вопросов

Private Sub Workbook_BeforeClose(Cancel As Boolean)  
Dim x As String  
   ActiveWorkbook.Save  
   strPath = ActiveWorkbook.Path & «Temp»  
   On Error Resume Next  
   x = GetAttr(strPath) And 0  
   If Err = 0 Then ‘ если путь существует — сохраняем копию книги  
       strdate = Format(Now, «yyyy/mm»)  
        ActiveWorkbook.SaveAs Filename:=strPath & strdate & «.xlsm», FileFormat:= _  
       xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False  
       ‘Application.DisplayAlerts = True  
       ‘Application.DisplayAlerts = false  
   End If  

  End Sub  

  GIG_ant не получается  
се равно спрашивает заменить книгу (Да,Нет,Отмена)

закрытие екселя с сохранением и без предупреждения

85Muslim85

Дата: Суббота, 21.03.2015, 14:08 |
Сообщение № 1

Группа: Заблокированные

Ранг: Участник

Сообщений: 60


Репутация:

-23

±

Замечаний:
80% ±


Excel 2007

добрый день, скажите как закрыть ексель (полностью выйти) с сохранением под таким же названием и без предупреждения
скажите что в этом коде не так((((

[vba]

Код

Sub вава()
Range(«A1») = 1
Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)
Workbooks.Close
End Sub

[/vba]

Сообщение отредактировал 85Muslim85Суббота, 21.03.2015, 16:26

 

Ответить

KSV

Дата: Суббота, 21.03.2015, 14:29 |
Сообщение № 2

Группа: Друзья

Ранг: Ветеран

Сообщений: 770


Репутация:

255

±

Замечаний:
0% ±


Excel 2013

все правильно

[vba]

Код

‘ подавляет предупреждения Excel
Workbooks.Application.DisplayAlerts = False

‘ сохраняет книгу в файл С ДРУГИМ именем
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)

‘ сохраняет книгу в файл С ТЕМ ЖЕ именем
Excel.ActiveWorkbook.Save

‘ закрывает книгу
Workbooks.Close

‘ закрыть с сохранением (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close True

‘ закрыть без сохранения (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close False

‘ закрыть Excel (закроется только если в этом же Application больше нет открытых и не сохраненных книг,
‘ иначе будет запрашивать подтверждения сохранения, при .DisplayAlerts = True)
Application.Quit

[/vba]


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333

Сообщение отредактировал KSVСуббота, 21.03.2015, 14:34

 

Ответить

85Muslim85

Дата: Суббота, 21.03.2015, 14:35 |
Сообщение № 3

Группа: Заблокированные

Ранг: Участник

Сообщений: 60


Репутация:

-23

±

Замечаний:
80% ±


Excel 2007

все отлично)) спасибки… вот чего я хотел)

Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.Save
Application.Quit

 

Ответить

Содержание

  1. Метод Workbook.SaveAs (Excel)
  2. Синтаксис
  3. Параметры
  4. Замечания
  5. Пример
  6. Поддержка и обратная связь
  7. Vba excel сохранить файл без подтверждения
  8. Vba excel сохранить файл без подтверждения
  9. Как отключить запрос на сохранение при закрытии книги?
  10. Отключить запрос на сохранение с кодом VBA в Excel
  11. MoveFirst Weblog
  12. Share this:
  13. Like this:
  14. Related
  15. 3 thoughts on “ Excel VBA – Save As (SaveAs) Without Confirmation ”

Метод Workbook.SaveAs (Excel)

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

Хотите создавать решения, которые расширяют возможности 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

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

Пример

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

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

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

Источник

Vba excel сохранить файл без подтверждения

добрый день, скажите как закрыть ексель (полностью выйти) с сохранением под таким же названием и без предупреждения
скажите что в этом коде не так((((

добрый день, скажите как закрыть ексель (полностью выйти) с сохранением под таким же названием и без предупреждения
скажите что в этом коде не так((((

Сообщение добрый день, скажите как закрыть ексель (полностью выйти) с сохранением под таким же названием и без предупреждения
скажите что в этом коде не так((((

KSV Дата: Суббота, 21.03.2015, 14:29 | Сообщение № 2

200?’200px’:»+(this.scrollHeight+5)+’px’);»> ‘ подавляет предупреждения Excel
Workbooks.Application.DisplayAlerts = False

‘ сохраняет книгу в файл С ДРУГИМ именем
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)

‘ сохраняет книгу в файл С ТЕМ ЖЕ именем
Excel.ActiveWorkbook.Save

‘ закрывает книгу
Workbooks.Close

‘ закрыть с сохранением (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close True

‘ закрыть без сохранения (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close False

‘ закрыть Excel (закроется только если в этом же Application больше нет открытых и не сохраненных книг,
‘ иначе будет запрашивать подтверждения сохранения, при .DisplayAlerts = True)
Application.Quit

200?’200px’:»+(this.scrollHeight+5)+’px’);»> ‘ подавляет предупреждения Excel
Workbooks.Application.DisplayAlerts = False

‘ сохраняет книгу в файл С ДРУГИМ именем
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)

‘ сохраняет книгу в файл С ТЕМ ЖЕ именем
Excel.ActiveWorkbook.Save

‘ закрывает книгу
Workbooks.Close

‘ закрыть с сохранением (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close True

‘ закрыть без сохранения (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close False

‘ закрыть Excel (закроется только если в этом же Application больше нет открытых и не сохраненных книг,
‘ иначе будет запрашивать подтверждения сохранения, при .DisplayAlerts = True)
Application.Quit

Сообщение все правильно

200?’200px’:»+(this.scrollHeight+5)+’px’);»> ‘ подавляет предупреждения Excel
Workbooks.Application.DisplayAlerts = False

‘ сохраняет книгу в файл С ДРУГИМ именем
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)

‘ сохраняет книгу в файл С ТЕМ ЖЕ именем
Excel.ActiveWorkbook.Save

‘ закрывает книгу
Workbooks.Close

‘ закрыть с сохранением (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close True

‘ закрыть без сохранения (без запроса подтверждения пользователя, даже если .DisplayAlerts = True)
Workbooks.Close False

‘ закрыть Excel (закроется только если в этом же Application больше нет открытых и не сохраненных книг,
‘ иначе будет запрашивать подтверждения сохранения, при .DisplayAlerts = True)
Application.Quit

85Muslim85 Дата: Суббота, 21.03.2015, 14:35 | Сообщение № 3

все отлично)) спасибки. вот чего я хотел)

Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.Save
Application.Quit

все отлично)) спасибки. вот чего я хотел)

Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.Save
Application.Quit 85Muslim85

Сообщение все отлично)) спасибки. вот чего я хотел)

Источник

Vba excel сохранить файл без подтверждения

Как отключить запрос на сохранение при закрытии книги?

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

Отключить запрос на сохранение с кодом VBA в Excel

Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!

Здесь я представляю вам два кода VBA, чтобы отключить запрос на сохранение. Один закроет Excel без сохранения, когда вы закроете книгу напрямую, а другой закроет Excel с сохранением последнего изменения, которое вы сделали при закрытии книги.

1. Нажмите Alt + F11 открыть Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модули , чтобы открыть окно модуля, затем скопируйте в окно следующий код VBA.

VBA: закрыть без сохранения напрямую.

3. Нажмите Run или F5 клавишу на клавиатуре, чтобы запустить этот код. Затем, когда вы закрываете книгу Excel, она закроется напрямую, не сохраняя последнее изменение.

Если вы хотите закрыть Excel с сохранением изменений, вы можете использовать этот код VBA.

VBA: закрыть с сохранением.

Внимание: Второй VBA не работает с новыми книгами, которые вы никогда раньше не сохраняли.

Источник

MoveFirst Weblog

When saving a file in Excel from VBA code it is sometime useful to avoid the display of a Save As dialog if the file to be saved already exists (i.e. to overwrite any exisiting files).

This is pretty easy but one of those things I always forget how to do!

Thanks to the users at http://www.vbforums.com/showthread.php?t=528826 who reminded me of this for about the hundredth time!

Like this:

Related

3 thoughts on “ Excel VBA – Save As (SaveAs) Without Confirmation ”

So I am using this code from a “button” within my Excel Spreadsheet:

Sub Save_Name_New_Application()

‘ Save_Name_New_Application Macro
‘ Macro recorded 11/8/2008 by David L. Rosengarden

If Right(ThisWorkbook.Path, 19) “Client_Applications” Then
Dim FName As String
Do Until Right(FName, 19) = “Client_Applications”
FName = BrowseFolder(Caption:=”You Must Select the Clients_Application Folder”)
Loop
ChDir (FName)
End If

Dim File_To_SaveAs_Name As String

File_To_SaveAs_Name = Range(“D10”).Value + “loan mod app.xls”

On Error Resume Next

ActiveWorkbook.SaveAs Filename:=File_To_SaveAs_Name, FileFormat:=xlNormal, Password:=””, WriteResPassword:=””, _
ReadOnlyRecommended:=False, CreateBackup:=False

Hey – when it’s naming the file for the first time – no problem – I get a save with a unique file name.

HOWEVER – when I go to click my save button again AFTER I made changes to the spreadsheet – it goes through the Save As routine – asks me if I want to overwrite (which I want in this case) I see the progress bar at the bottom left do its thing for a save. But when I close out of the spreadsheet and reopen the file that was just saved – the fields I changed are back to what they were BEFORE I pressed my save routine.

When I run your code on my machine it works just fine. (i.e. it asks for confirmation to save, saves and when the file is closed and re-opened it has saved all the changes).

I saved an excel document in SharePoint as a template for a new document. I wanted to control everything so the user can’t change the FileName nor the path, so I don’t want any prompt at all. The methods Application.DisplayAlerts = False and ThisWorkbook.Saved still prompted the user.

The trick that did it for me is the “cancel=true”, which I used after I saved the file.
Problem solved.

Источник

Adblock
detector

When saving a file in Excel from VBA code it is sometime useful to avoid the display of a Save As dialog if the file to be saved already exists (i.e. to overwrite any exisiting files).

This is pretty easy but one of those things I always forget how to do!

Here’s the code:

Application.DisplayAlerts = False
ActiveWorkbook.SaveAs (etc.)
Application.DisplayAlerts = True

Thanks to the users at http://www.vbforums.com/showthread.php?t=528826 who reminded me of this for about the hundredth time!

  • #2

Hi, save this macro in the ThisWorkbook object rather than in a module.

Code:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
End Sub

  • #3

Thanks for the suggestion; I couldn’t get that to work, but I did find a solution that did work for me to disable the prompt; here’s an example:

Application.DisplayAlerts = False ‘IT WORKS TO DISABLE ALERT PROMPT

‘SAVES FILE USING THE VARIABLE BOOKNAME AS FILENAME
ActiveWorkbook.SaveAs Filename:=»C:Data» & BookName, FileFormat:= _
xlNormal, Password:=»», WriteResPassword:=»», ReadOnlyRecommended:=False _
, CreateBackup:=False

Application.DisplayAlerts = True ‘RESETS DISPLAY ALERTS

  • #4

Theres always more than one way. :)

The code I posted should be saved in ThisWorkbook rather than Module1 (or whatever you have called your module). I was presuming the file your saving is the same one as where the code is run from. Sorry if I misinterpreted you.

The before_close event runs automatically as opposed to a normal macro where you have to do an action.

You can also have done this which saves and closes the workbook…

Code:

Sub CloseandSave()
ActiveWorkbook.Close SaveChanges:=True
End Sub

hth

  • #5

Hi ppl ,
i need help in macros of excel
The requirement is:
Coulmn1 Column2
ASD-op null
wer-it null
wert-yu null
dft-op null

When a user is trying to save, i want an macro to run were it ill have a search functionality in column 1 wic has -op suffixed and if corresponding column2 is null user shld get an alert asking to fill the column two

  • #6

Hi swathis

Can you please start your own new thread? This one relates to a different discussion altogether.

  • #7

Thanks for the suggestion; I couldn’t get that to work, but I did find a solution that did work for me to disable the prompt; here’s an example:

Application.DisplayAlerts = False ‘IT WORKS TO DISABLE ALERT PROMPT

‘SAVES FILE USING THE VARIABLE BOOKNAME AS FILENAME
ActiveWorkbook.SaveAs Filename:=»C:Data» & BookName, FileFormat:= _
xlNormal, Password:=»», WriteResPassword:=»», ReadOnlyRecommended:=False _
, CreateBackup:=False

Application.DisplayAlerts = True ‘RESETS DISPLAY ALERTS

Your solution used to work for me, but now I get another alert:

«Privacy warning: This document contains macros, ActiveX controls, XML expansion pack information, or Web components. These may include personal information that cannot be removed by the Document Inspector.»

Any ideas?

PS. I use Windows XP, Excel 2007.

  • #8

Try this…

Sub SaveWbWithoutPrompt()

Activeworkbook.Saved=True

End Sub

  • #9

Thank You for this too, it saved me some annoying work regularly~~~~

  • #10

I have written the macro for the save as functionality but once the routine iis over the normal save as box comes up. can someone help.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Val(Application.Version) < 12 Then
restart1:
vFile = Application.GetSaveAsFilename(«», «Excel files (*.xls),*.xls»)

If TypeName(vFile) = «Boolean» Then

iRet = MsgBox(«Quit without saving file?», vbYesNo)
If iRet = vbNo Then
GoTo restart1
Else
Exit Sub
End If
‘Exit Sub ‘ user cancelled
Else
ActiveWorkbook.SaveAs Filename:=vFile, FileFormat:= _
-4143
iRet = MsgBox(«Your file has been saved in » & FPath, vbOK)
End If

End Sub

Понравилась статья? Поделить с друзьями:
  • Сочетание клавиш shift ctrl enter excel
  • Сочетание клавиш word абзац это
  • Сохранить только текст при вставке word
  • Сочетание клавиш excel список
  • Сохранить только результат excel