I have used the following without success. The active workbook closes, indeed, but the excel window remains open.
Application.ActiveWindow.Close SaveChanges:=False
ActiveWorkbook.Close SaveChanges:=False
Which is the command that terminates the application?
EDIT
To say a little more: In the workbook Open event I run a macro. I want to terminate the application when that macro finishes. I also tried this without success.
Private Sub Workbook_Open()
Macro_MyJob
Application.Quit
End Sub
Where should I put this Application.Quit command?
asked Sep 2, 2010 at 14:45
BraniBrani
6,57415 gold badges46 silver badges49 bronze badges
I think your problem is that it’s closing the document that calls the macro before sending the command to quit the application.
Your solution in that case is to not send a command to close the workbook. Instead, you could set the «Saved» state of the workbook to true, which would circumvent any messages about closing an unsaved book. Note: this does not save the workbook; it just makes it look like it’s saved.
ThisWorkbook.Saved = True
and then, right after
Application.Quit
answered Sep 2, 2010 at 16:00
variantvariant
1,3442 gold badges11 silver badges18 bronze badges
To avoid the Save prompt message, you have to insert those lines
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True
After saving your work, you need to use this line to quit the Excel application
Application.Quit
Don’t just simply put those line in Private Sub Workbook_Open() unless you got do a correct condition checking, else you may spoil your excel file.
For safety purpose, please create a module to run it. The following are the codes that i put:
Sub testSave()
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True
Application.Quit
End Sub
Hope it help you solve the problem.
answered Apr 29, 2013 at 8:14
Leng KeongLeng Keong
1431 silver badge3 bronze badges
1
Sub TestSave()
Application.Quit
ThisWorkBook.Close SaveChanges = False
End Sub
This seems to work for me, Even though looks like am quitting app before saving, but it saves…
answered Jan 6, 2015 at 8:33
kc kalamakc kalama
711 silver badge1 bronze badge
2
Application.Quit
Should do the trick.
answered Sep 2, 2010 at 14:47
MichaelMichael
1,6362 gold badges16 silver badges21 bronze badges
0
I tried a certain sequence that seems to work as you can see below:
ThisWorkbook.Saved = True
Application.Quit
Application.ActiveWindow.Close SaveChanges:=False
ActiveWorkbook.Close SaveChanges:=False
ForceMagic
6,15212 gold badges68 silver badges88 bronze badges
answered Jul 17, 2013 at 19:55
You can try out
ThisWorkbook.Save
ThisWorkbook.Saved = True
Application.Quit
answered Mar 27, 2019 at 5:19
In my case, I needed to close just one excel window and not the entire application, so, I needed to tell which exact window to close, without saving it.
The following lines work just fine:
Sub test_t()
Windows("yourfilename.xlsx").Activate
ActiveWorkbook.Close SaveChanges:=False
End Sub
answered Jun 7, 2018 at 13:55
Sub button2_click()
'
' Button2_Click Macro
'
' Keyboard Shortcut: Ctrl+Shift+Q
'
ActiveSheet.Shapes("Button 2").Select
Selection.Characters.Text = "Logout"
ActiveSheet.Shapes("Button 2").Select
Selection.OnAction = "Button2_Click"
ActiveWorkbook.Saved = True
ActiveWorkbook.Save
Application.Quit
End Sub
answered Jul 26, 2013 at 7:07
Содержание
- Метод Workbook.Close (Excel)
- Синтаксис
- Параметры
- Замечания
- Пример
- Поддержка и обратная связь
- Workbook.Close method (Excel)
- Syntax
- Parameters
- Remarks
- Example
- Support and feedback
- Vba excel как закрыть excel
- закрытие екселя с сохранением и без предупреждения (Макросы/Sub)
- VBA Access: как закрыть книгу Эксель без сохранения?
- Надо закрыть через VBA Excel ,без сохранения и без выскакивания запросов на сохранеие
- Закрыть окно редактора VBA макросом (Макросы/Sub)
- Как в одном макросе закрыть все книги Excel?
- VBA сохранить&закрыть userform
- VBA Excel закрытие формы на листе
Метод Workbook.Close (Excel)
Синтаксис
expression. Close (SaveChanges, FileName, RouteWorkbook)
Выражение Переменная, представляющая объект Workbook .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Savechanges | Необязательный | Variant | Если в книге нет изменений, этот аргумент игнорируется. Если в книге есть изменения, а книга отображается в других открытых окнах, этот аргумент игнорируется. Если в книге есть изменения, но книга не отображается в других открытых окнах, этот аргумент указывает, следует ли сохранять изменения. Если задано значение True, изменения сохраняются в книге. |
Если имя файла еще не связано с книгой, используется имя файла . Если параметр FileName опущен, пользователю будет предложено указать имя файла. FileName Необязательный Variant Сохраняет изменения под этим именем файла. RouteWorkbook Необязательный Variant Если книга не требуется маршрутизировать к следующему получателю (если она не имеет скольжения маршрутизации или уже была перенаправлена), этот аргумент игнорируется. В противном случае Microsoft Excel направляет книгу в соответствии со значением этого параметра.
Если задано значение True, книга отправляется следующему получателю. Если задано значение False, книга не отправляется. Если этот параметр опущен, пользователю будет предложено отправить книгу.
Замечания
При закрытии книги из Visual Basic в ней не выполняются макросы Auto_Close. Используйте метод RunAutoMacros для запуска макросов Auto_Close.
Пример
Этот пример закрывает Book1.xls и удаляет все внесенные в него изменения.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Источник
Workbook.Close method (Excel)
Closes the object.
Syntax
expression.Close (SaveChanges, FileName, RouteWorkbook)
expression A variable that represents a Workbook object.
Parameters
Name | Required/Optional | Data type | Description |
---|---|---|---|
SaveChanges | Optional | Variant | If there are no changes to the workbook, this argument is ignored. If there are changes to the workbook and the workbook appears in other open windows, this argument is ignored. If there are changes to the workbook but the workbook doesn’t appear in any other open windows, this argument specifies whether changes should be saved. If set to True, changes are saved to the workbook. |
If there is not yet a file name associated with the workbook, FileName is used. If FileName is omitted, the user is asked to supply a file name. FileName Optional Variant Saves changes under this file name. RouteWorkbook Optional Variant If the workbook doesn’t need to be routed to the next recipient (if it has no routing slip or has already been routed), this argument is ignored. Otherwise, Microsoft Excel routes the workbook according to the value of this parameter.
If set to True, the workbook is sent to the next recipient. If set to False, the workbook is not sent. If omitted, the user is asked whether the workbook should be sent.
Closing a workbook from Visual Basic doesn’t run any Auto_Close macros in the workbook. Use the RunAutoMacros method to run the Auto_Close macros.
Example
This example closes Book1.xls and discards any changes that have been made to it.
Support and feedback
Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.
Источник
Vba excel как закрыть excel
закрытие екселя с сохранением и без предупреждения (Макросы/Sub)
Смотрите также клавиатуре) для нажатия кнопки: просто скрывает формулу перехватывать события на сценарии. Она такая. с Книги3 в
Mishel915 одном Макросе1) книги. ‘и закрываю окно
: Кнопочка с решёткой,
As Excel.Application) app.ActiveWorkbook.Close
как. По-видимому, работающий
:
другое сообщение, хотя
файл Эксель, да
True)85Muslim85
Не хочу размещать
Private Sub CommandButton1_Click()
от пользователя уровне Application. В коллекции Workbooks
Книгу1, потом перейти
:Если команда о редактора VBA
однако
0 app.Quit End
макрос не дает
Mary_Rustle ничего принципиального я так чтобы иWorkbooks.Close True: добрый день, скажите
кнопки на форме
Unload Me Setметод Unload (имяMishel915 фиксируется определённый порядок в Книгу2, потом
EducatedFool !
закрытии книг поступаетВозможно и ВамGlen SubА в самой выполнить команду Quit., а какой смысл
не поменяла: в скрытых процессах’ закрыть без как закрыть ексель
— так сделай
UserForm1 = Nothing формы) — выгружает: Работает так : чередования открытых книг,
перейти в Книгу1,
Спасибо за этюд.
из Книги1, то
VBA Access: как закрыть книгу Эксель без сохранения?
это поможет.: не получается код
книге прописать Можно попробовать накидать открывать файл Excel
Помогите, пожалуйста, это его тоже не сохранения (без запроса (полностью выйти) с ее масенькой (все End Sub форму из памятиSub Макрос1() Dim
который не меняется.
после чего податьДа, необходимо было закрывается только Книга1.Glen прикрепитьSub QE() Dim нажатий клавиш, типа и запускать макрос, очень большая проблема, было. подтверждения пользователя, даже сохранением под таким размеры и положение=1flower2005 и закрывает её wb As Workbook Код размещён в команду о закрытии подойти к ThisWorkbook Книга2 остаётся открытой.:Glen obj As ObjectКод Sub closeE() если файл потом уже долго бьюсь
Я делаю следующее: если .DisplayAlerts = же названием и — прекрасно работает.Пусть: А может быть,CердЖиГ
For Each wb Книге3, а запускается двух книг, то с другой стороныОчевидно это происходит
ОлеггелО:
Set obj = Set sh =
закрывается без сохранения над ней, никаких
Private Sub Кнопка0_Click() True) без предупреждения в проекте существует стоит обработать событие: Всем спасибо уже In Workbooks If с Книги1. Как закрывается только Книга1? ! из-за того, что,Sub rr() CreateObject(‘Имя класса’) obj.ExcelQuit CreateObject(‘WScript.Shell’) sh.SendKeys (‘Надо закрыть через VBA Excel ,без сохранения и без выскакивания запросов на сохранеие
Private Sub CommandButton1_Click() And wb.Name <> подошла очередь закрыть закрытой?Sub test() Dim
с управляющим макросом)Mishel915
ActiveWorkbook.VBProject установлен ODE, то Здесь надо подрегулировать)? Этот макрос, что: Ответ найден!
Dim app As (закроется только если так(((( KeyAscii As MSForms.ReturnInteger) ESC, выполнить закрытиеUnload userform1 ThisWorkbook.Name Then wb.Close Книгу1, код её4. Если перейти wb As Workbook
закрывается первой, после: Всем доброе времяSet VBComp = создание такой dll цифру в Sub вава() If KeyAscii =
формы, а наActiveWorkbook.Save Next Application.ActiveWorkbook.Close End закрывает, после чего с Книги3 в
For Each wb чего выполнение Макроса1
суток ! VBProj.VBComponents(«Лист3») займет несколько минут
9>. Да и другой файл, который старалась
= CreateObject(«Excel.Application») With Application больше нетRange(«A1») = 1 27 Then MsgBox другие клавиши не
End Sub Sub выполнение кода прекращается Книгу1, потом перейти In Workbooks If
прекращается.Две книги ExcelSet CodeMod =Glen работает это только потом используется?Изменила код следующим app .Workbooks.Open FullFilePath
Закрыть окно редактора VBA макросом (Макросы/Sub)
открытых и неWorkbooks.Application.DisplayAlerts = False
‘Была нажата ESC, реагировать.Pavel55СердЖиГ
так как код в Книгу2, потом wb.Name <> ThisWorkbook.NameТакой вопрос :
(Книга1 и Книга2) VBComp.CodeModule
: Доброго дня. с листа Excel,
Mary_Rustle образом:
End With app.Run
сохраненных книг,Excel.ActiveWorkbook.SaveAs («rl.xlsm»)
прячем форму’ UserForm1.Hideflower2005: )) ну, всё
: Уважаемые форумчане! запущен с Книги1. перейти в Книгу1,
Then wb.Close Next какой должен быть закрываются в одном
With CodeModВ работе макрос а из среды
:Private Sub Кнопка0_Click()
«diap» app.Quit Set’ иначе будет
Workbooks.Close Else ‘ничего не
: Кто тебя учил
правильно) только выНапомните, плиззз, команды
Все книги, которые потом перейти в
End SubКнига3 должна код для закрытия
макросе, например так
lLineNum = .CreateEventProc(«Change»,
переносит модуль процедуры
разработки не работает.Казанский FullFilePath = «C:папка7 app = Nothing запрашивать подтверждения сохранения,End Sub делаем End If выгружать (unload) форму спрашивали о сохранении в VBA для
стоят в очереди Книгу2, после чего оставаться для выбора всех книг, записанных :
«Worksheet») события на новыйoldpasp, спасибо) Действительно глупость.
свод реестров 2015_9.xlsm»
Как в одном макросе закрыть все книги Excel?
DoCmd.SetWarnings False DoCmd.RunSQL при .DisplayAlerts =KSV
End SubКстати, а в кнопке? Не формы, а сами сохранения и закрытия на закрытие после
подать команду о
нового действия. в Макросе1, неКод:lLineNum = lLineNum лист.: Так как макрос Исправила на (oBook.Save). Dim app As «DELETE Свод_реестров.* FROM True)
: все правильно какие элементы есть руби сук, на сохраняете активную книгу
userform.
Книги1, теперь не закрытии двух книг,Не всё пока
зависимо от порядкаSub Макрос1() On + 1При этом почему расположен в какой-либо
Штурмaн Object Dim oBook Свод_реестров» DoCmd.TransferSpreadsheet acImport,Application.Quit200?’200px’:»+(this.scrollHeight+5)+’px’);»>’ подавляет предупреждения Excel на форме? котором сидишь! Напиши
) или намСпасибо! закроются из-за того, то закрываются обе получается. расположения книг в Error Resume Next.InsertLines lLineNum, «call то само открывается книге, то выполнив: Помогите чайнику.Надо закрыть As Object Set , «Свод_реестров», FullFilePath,85Muslim85
Workbooks.Application.DisplayAlerts = FalseКод может и в коде кнопки надо было догадатьсяPavel55 что код уже книги!1. Если перейти
Макросе1. Очевидно в Workbooks(«Книга1»).Close (SaveChanges) Workbooks(«Книга2»).Close Izm(Target)» окно редактора VBA.
команду через VBA Excel app = CreateObject(«Excel.Application») True, «Свод_реестров» CurrentDb.Execute
: все отлично)) спасибки.
’ сохраняет книгу не сработать, если, me.hide — это ?): А что значит не выполняется.Таким образом в с Книги3 в Макросе1 необходимо определить
(SaveChanges) On ErrorEnd With
По типу Alt+F11.Application.Quit получаем запрос ,без сохранения и Set oBook = «DROP TABLE [Свод_реестров_ОшибкиИмпорта]» вот чего я
в файл С например, фокус на переведет тебя вСердЖиГ сохранить? У формыКод будет срабатывать 3-ем сценарии код Книгу1, после чего
управляющую книгу, т. GoTo 0 EndVBProj.VBE.MainWindow.Visible = FalseПодскажите как кодом на сохранение без app.workbooks.Open(FullFilePath) app.Run «diap» DoCmd.SetWarnings True MsgBox хотел) ДРУГИМ именем TextBox(e).Только ListBox
команду в вызывающей: Павел, сорри, уже нет такой функции всегда, если его почемуто не видит подать команду о е. книгу с SubМакрос1 находится вEnd Sub его закрыть.А если предварительно
выскакивания запросов на oBook.Close False app.Quit «Импорт успешно завешен»Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)К этой процедуре процедуре после show
вечер был :-)А закрыть можно запускать с книги Книги2. закрытии Книги1, то которой поступила команда, Книге3. Проэкт состоитОлеггелОGlen закрыть книгу без сохранеие Set app = End SubРаньше всеExcel.ActiveWorkbook.Save’ сохраняет книгу надо обратиться с — сделай там,Димит так в которой онMishel915 закрывается! и закрыть её из трёх книг:: Вроде так помогает сохраненияpalva Nothing DoCmd.SetWarnings False
работало хорошо заApplication.Quit в файл С фактическим параметром KeyAscii что требуется, а
: Не получается закрытьSub Макрос1() размещён.: Установил причину не2. Если перейти последней. — Книга1, Книга2,GlenSet VBProj =Application.ActiveWorkbook.Close 0 то
: Закрыть одну из DoCmd.RunSQL «DELETE Свод_реестров.*
исключением следующего: когдаMary_Rustle ТЕМ ЖЕ именем — как это затем выгружай форму! форму при нажатии’или такЕсли код запускать срабатывания кода
VBA сохранить&закрыть userform
с Книги3 вEducatedFool
Книга3., здравствуйте. Я так ActiveWorkbook.VBProject работа макроса прекращается
книг, если макрос
FROM Свод_реестров» DoCmd.TransferSpreadsheet уже после успешного: Добрый день!Excel.ActiveWorkbook.Save
ESC!!
Unload UserForm1 ‘закрыть
с других книг,Sub test() Dim Книгу1, потом перейти
: Sub test() Dim
Если команда о
делал (топорно конечно),
VBProj.VBE.MainWindow.Visible = False (книга то закрывается) находится в другой,
acImport, , «Свод_реестров», выполнения модуля яМои попытки найти’ закрывает книгу
Walkerу: Не хочу размещатьПомогите!!
и выгрузить из
то на его
wb As Workbook
в Книгу2, после
wb As Workbook закрытии книг поступает добавьте перед «EndGlenЗначит надо объединить можно так: FullFilePath, True, «Свод_реестров» пыталась открыть файл нужное не увенчались
Workbooks.CloseПочему нельзя Unload кнопки на форме
VBA Excel закрытие формы на листе
flower2005 памяти форму работу будет влиять For Each wb
чего подать команду
For Each wb из Книги2, например sub»: Код не покажу. эти команды: можноКод Application.DisplayAlerts =
CurrentDb.Execute «DROP TABLE эксель, мне выдавалось успехом, помогите пожалуйста!’ закрыть с
в кнопке? — как и: Разместите на форме’или так
порядок размещения открытых In Workbooks If о закрытии двух In Workbooks If так :
Источник
CAHO Пользователь Сообщений: 2183 |
#1 07.07.2015 14:07:19 Здравствуйте друзья.
Таким образом удобно закрывать когда открыто несколько книг. А вот если открыта всего одна книга, то при закрытии остаётся открытым само приложение Excel. И его ещё раз приходится закрывать. Как же можно закрыть книгу вместе с приложение, если она одна? Прикрепленные файлы
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
||
Sanja Пользователь Сообщений: 14838 |
#2 07.07.2015 14:10:04 ?
Согласие есть продукт при полном непротивлении сторон. |
||
CAHO Пользователь Сообщений: 2183 |
Sanja
, спасибо. Тогда придётся делать проверку на количество открытых книг с таким способом закрытия, ибо если открыто их несколько, то он всё закрывает. Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
Sanja Пользователь Сообщений: 14838 |
#4 07.07.2015 14:16:50
? Изменено: Sanja — 07.07.2015 14:22:05 Согласие есть продукт при полном непротивлении сторон. |
||||
CAHO Пользователь Сообщений: 2183 |
#5 07.07.2015 14:24:12 И как закрыть книгу в таком случае без сохранения?
с application это не проканало
вообще не понял при чём тут лыжи. Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
||||
Sanja Пользователь Сообщений: 14838 |
#6 07.07.2015 14:32:13 CAHO, вроде не первую сотню сообщений на сайте. В стартовом топике стоял вопрос
сообщение #2 отвечает на него. Про то
Согласие есть продукт при полном непротивлении сторон. |
||||||
CAHO Пользователь Сообщений: 2183 |
Sanja
, спасибо. Разобрался. В файле (оригинале другом) ошибка была сделана и поэтому #6 сообщение у меня не работало. Поэтому и переспросил как сохранить без возможности сохранения. Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
юнат Пользователь Сообщений: 22 |
#8 03.11.2022 14:29:44 Сенсеи подскажите чем можно излечить мою болячку?
А может можно в конце макроса или другим макросом закрывать этот процесс вот здесь C:Program FilesMicrosoft OfficerootOffice16EXCEL.EXE? Прикрепленные файлы
|
||
МатросНаЗебре Пользователь Сообщений: 5516 |
#9 03.11.2022 14:42:02 А если эту строку убрать?
Вот так можно закрыть все процессы. При желании, если знаете ID, то можно и конкретный процесс убрать.
|
||||||
юнат Пользователь Сообщений: 22 |
#10 04.11.2022 10:04:16 МатросНаЗебре, спасибо, objExcelApp.Workbooks.Close — убрал, не помогло. Shell, TASKKILL, KILL — скада не знает таких команд, ругается. А вот как узнать ИД процесса и удалить его это может помочь, но для этого вопроса скорее всего нужна отдельная тема, я такую не нашёл. |
закрытие екселя с сохранением и без предупреждения (Макросы/Sub)
Смотрите также клавиатуре) для нажатия кнопки: просто скрывает формулу перехватывать события на сценарии. Она такая. с Книги3 в
Mishel915 одном Макросе1) книги. ‘и закрываю окно
: Кнопочка с решёткой,
As Excel.Application) app.ActiveWorkbook.Close
как. По-видимому, работающий
:
другое сообщение, хотя
файл Эксель, да
True)85Muslim85
Не хочу размещать
Private Sub CommandButton1_Click()
от пользователя уровне Application. В коллекции Workbooks
Книгу1, потом перейти
:Если команда о редактора VBA
однако
0 app.Quit End
макрос не дает
Mary_Rustle ничего принципиального я так чтобы иWorkbooks.Close True: добрый день, скажите
кнопки на форме
Unload Me Setметод Unload (имяMishel915 фиксируется определённый порядок в Книгу2, потом
EducatedFool !
закрытии книг поступаетВозможно и ВамGlen SubА в самой выполнить команду Quit., а какой смысл
не поменяла: в скрытых процессах' закрыть без как закрыть ексель
- так сделай
UserForm1 = Nothing формы) — выгружает: Работает так : чередования открытых книг,
перейти в Книгу1,
Спасибо за этюд.
из Книги1, то
excelworld.ru
VBA Access: как закрыть книгу Эксель без сохранения?
это поможет.: не получается код
книге прописать Можно попробовать накидать открывать файл Excel
Помогите, пожалуйста, это его тоже не сохранения (без запроса (полностью выйти) с ее масенькой (все End Sub форму из памятиSub Макрос1() Dim
который не меняется.
после чего податьДа, необходимо было закрывается только Книга1.Glen прикрепитьSub QE() Dim нажатий клавиш, типа и запускать макрос, очень большая проблема, было. подтверждения пользователя, даже сохранением под таким размеры и положение=1flower2005 и закрывает её wb As Workbook Код размещён в команду о закрытии подойти к ThisWorkbook Книга2 остаётся открытой.:Glen obj As ObjectКод Sub closeE() если файл потом уже долго бьюсь
Я делаю следующее: если .DisplayAlerts = же названием и — прекрасно работает.Пусть: А может быть,CердЖиГ
For Each wb Книге3, а запускается двух книг, то с другой стороныОчевидно это происходит
ОлеггелО:
Set obj = Set sh =
закрывается без сохранения над ней, никаких
Private Sub Кнопка0_Click() True) без предупреждения в проекте существует стоит обработать событие: Всем спасибо уже In Workbooks If с Книги1. Как закрывается только Книга1? ! из-за того, что,Sub rr() CreateObject(‘Имя класса’) obj.ExcelQuit CreateObject(‘WScript.Shell’) sh.SendKeys (‘{F10}{Down (oBook.Close успехов! FullFilePath = «C:Папка7Workbooks.Close Falseскажите что в
Userform1, тогда: UserForm_KeyPress и, сделал так :-) wb.Name <> Application.ActiveWorkbook.Name только в коде Книга2 остётся неДостаточно всего лиш управляющая книга (книгаспс.Set VBProj = Application End SubЕсли 9}{Enter}{Right}{Enter}’) End SubFalseMary_Rustle
свод реестров 2015_9.xlsm»’ закрыть Excel этом коде неPrivate Sub UserForm_KeyPress(ByValесли это клавиша
CyberForum.ru
Надо закрыть через VBA Excel ,без сохранения и без выскакивания запросов на сохранеие
Private Sub CommandButton1_Click() And wb.Name <> подошла очередь закрыть закрытой?Sub test() Dim
с управляющим макросом)Mishel915
ActiveWorkbook.VBProject установлен ODE, то Здесь надо подрегулировать)? Этот макрос, что: Ответ найден!
Dim app As (закроется только если так(((( KeyAscii As MSForms.ReturnInteger) ESC, выполнить закрытиеUnload userform1 ThisWorkbook.Name Then wb.Close Книгу1, код её4. Если перейти wb As Workbook
закрывается первой, после: Всем доброе времяSet VBComp = создание такой dll цифру в {Down ли, создает какой-тоВидимо плохо раньше Object Set app в этом же200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub вава() If KeyAscii =
формы, а наActiveWorkbook.Save Next Application.ActiveWorkbook.Close End закрывает, после чего с Книги3 в
For Each wb чего выполнение Макроса1
суток ! VBProj.VBComponents(«Лист3») займет несколько минут
9}. Да и другой файл, который старалась
= CreateObject(«Excel.Application») With Application больше нетRange(«A1») = 1 27 Then MsgBox другие клавиши не
End Sub Sub выполнение кода прекращается Книгу1, потом перейти In Workbooks If
прекращается.Две книги ExcelSet CodeMod =Glen работает это только потом используется?Изменила код следующим app .Workbooks.Open FullFilePath
CyberForum.ru
Закрыть окно редактора VBA макросом (Макросы/Sub)
открытых и неWorkbooks.Application.DisplayAlerts = False
‘Была нажата ESC, реагировать.Pavel55СердЖиГ
так как код в Книгу2, потом wb.Name <> ThisWorkbook.NameТакой вопрос :
(Книга1 и Книга2) VBComp.CodeModule
: Доброго дня. с листа Excel,
Mary_Rustle образом:
End With app.Run
сохраненных книг,Excel.ActiveWorkbook.SaveAs («rl.xlsm»)
прячем форму’ UserForm1.Hideflower2005: )) ну, всё
: Уважаемые форумчане! запущен с Книги1. перейти в Книгу1,
Then wb.Close Next какой должен быть закрываются в одном
With CodeModВ работе макрос а из среды
:Private Sub Кнопка0_Click()
"diap" app.Quit Set' иначе будет
Workbooks.Close Else 'ничего не
: Кто тебя учил
правильно) только выНапомните, плиззз, команды
Все книги, которые потом перейти в
End SubКнига3 должна код для закрытия
макросе, например так
lLineNum = .CreateEventProc("Change",
переносит модуль процедуры
разработки не работает.Казанский FullFilePath = «C:папка7 app = Nothing запрашивать подтверждения сохранения,End Sub делаем End If выгружать (unload) форму спрашивали о сохранении в VBA для
всех книг, записанных :
стоят в очереди Книгу2, после чего оставаться для выбора
«Worksheet») события на новыйoldpasp, спасибо) Действительно глупость.
свод реестров 2015_9.xlsm»
excelworld.ru
Как в одном макросе закрыть все книги Excel?
DoCmd.SetWarnings False DoCmd.RunSQL при .DisplayAlerts =KSV
End SubКстати, а в кнопке? Не формы, а сами сохранения и закрытия на закрытие после
подать команду о
нового действия. в Макросе1, неКод:lLineNum = lLineNum лист.: Так как макрос Исправила на (oBook.Save). Dim app As «DELETE Свод_реестров.* FROM True)
: все правильно какие элементы есть руби сук, на сохраняете активную книгу
userform.
Книги1, теперь не закрытии двух книг,Не всё пока
зависимо от порядкаSub Макрос1() On + 1При этом почему расположен в какой-либо
Штурмaн Object Dim oBook Свод_реестров» DoCmd.TransferSpreadsheet acImport,Application.Quit200?’200px’:»+(this.scrollHeight+5)+’px’);»>’ подавляет предупреждения Excel на форме? котором сидишь! Напиши
) или намСпасибо! закроются из-за того, то закрываются обе получается. расположения книг в Error Resume Next.InsertLines lLineNum, «call то само открывается книге, то выполнив: Помогите чайнику.Надо закрыть As Object Set , «Свод_реестров», FullFilePath,85Muslim85
Workbooks.Application.DisplayAlerts = FalseКод может и в коде кнопки надо было догадатьсяPavel55 что код уже книги!1. Если перейти
Макросе1. Очевидно в Workbooks(«Книга1»).Close (SaveChanges) Workbooks(«Книга2»).Close Izm(Target)» окно редактора VBA.
команду через VBA Excel app = CreateObject(«Excel.Application») True, «Свод_реестров» CurrentDb.Execute
: все отлично)) спасибки…
’ сохраняет книгу не сработать, если, me.hide — это ?): А что значит не выполняется.Таким образом в с Книги3 в Макросе1 необходимо определить
(SaveChanges) On ErrorEnd With
По типу Alt+F11.Application.Quit получаем запрос ,без сохранения и Set oBook = «DROP TABLE [Свод_реестров_ОшибкиИмпорта]» вот чего я
в файл С например, фокус на переведет тебя вСердЖиГ сохранить? У формыКод будет срабатывать 3-ем сценарии код Книгу1, после чего
управляющую книгу, т. GoTo 0 EndVBProj.VBE.MainWindow.Visible = FalseПодскажите как кодом на сохранение без app.workbooks.Open(FullFilePath) app.Run «diap» DoCmd.SetWarnings True MsgBox хотел) ДРУГИМ именем TextBox(e).Только ListBox
команду в вызывающей: Павел, сорри, уже нет такой функции всегда, если его почемуто не видит подать команду о е. книгу с SubМакрос1 находится вEnd Sub его закрыть.А если предварительно
выскакивания запросов на oBook.Close False app.Quit «Импорт успешно завешен»Workbooks.Application.DisplayAlerts = False
Excel.ActiveWorkbook.SaveAs («rl.xlsm»)К этой процедуре процедуре после show
вечер был :-)А закрыть можно запускать с книги Книги2. закрытии Книги1, то которой поступила команда, Книге3. Проэкт состоитОлеггелОGlen закрыть книгу без сохранеие Set app = End SubРаньше всеExcel.ActiveWorkbook.Save’ сохраняет книгу надо обратиться с — сделай там,Димит так в которой онMishel915 закрывается! и закрыть её из трёх книг:: Вроде так помогает сохраненияpalva Nothing DoCmd.SetWarnings False
работало хорошо заApplication.Quit в файл С фактическим параметром KeyAscii что требуется, а
: Не получается закрытьSub Макрос1() размещён.: Установил причину не2. Если перейти последней. — Книга1, Книга2,GlenSet VBProj =Application.ActiveWorkbook.Close 0 то
: Закрыть одну из DoCmd.RunSQL «DELETE Свод_реестров.*
исключением следующего: когдаMary_Rustle ТЕМ ЖЕ именем — как это затем выгружай форму! форму при нажатии’или такЕсли код запускать срабатывания кода
CyberForum.ru
VBA сохранить&закрыть userform
с Книги3 вEducatedFool
Книга3., здравствуйте. Я так ActiveWorkbook.VBProject работа макроса прекращается
книг, если макрос
FROM Свод_реестров» DoCmd.TransferSpreadsheet уже после успешного: Добрый день!Excel.ActiveWorkbook.Save
— ПРОШУ ПРОЩЕНИЯJohnyДимит
ESC!!
Unload UserForm1 ‘закрыть
с других книг,Sub test() Dim Книгу1, потом перейти
: Sub test() Dim
Если команда о
делал (топорно конечно),
VBProj.VBE.MainWindow.Visible = False (книга то закрывается) находится в другой,
acImport, , «Свод_реестров», выполнения модуля яМои попытки найти’ закрывает книгу
Walkerу: Не хочу размещатьПомогите!!
и выгрузить из
то на его
wb As Workbook
в Книгу2, после
wb As Workbook закрытии книг поступает добавьте перед «EndGlenЗначит надо объединить можно так: FullFilePath, True, «Свод_реестров» пыталась открыть файл нужное не увенчались
Workbooks.CloseПочему нельзя Unload кнопки на форме
planetaexcel.ru
VBA Excel закрытие формы на листе
flower2005 памяти форму работу будет влиять For Each wb
чего подать команду
For Each wb из Книги2, например sub»: Код не покажу. эти команды: можноКод Application.DisplayAlerts =
CurrentDb.Execute «DROP TABLE эксель, мне выдавалось успехом, помогите пожалуйста!’ закрыть с
в кнопке? — как и: Разместите на форме’или так
порядок размещения открытых In Workbooks If о закрытии двух In Workbooks If так :
SendKeys «%{F11}», True ‘делаюНе знаю как сделать dll (AddIn), False Windows(‘Книга2’).Close Application.DisplayAlerts [Свод_реестров_ОшибкиИмпорта]» DoCmd.SetWarnings True следующее предупреждение:Нужно после запуска сохранением (без запросаА куда Я где завязать закрытие кнопку. Установите еёUserForm1.Hide ‘скрыть форму книг в коллекции wb.Name <> ThisWorkbook.Name
книг, то закрываются wb.Name <> ThisWorkbook.NameКод: активным окно редактора его тут правильно где будут выполняться = True Закрыть MsgBox «Импорт успешно
Теперь не понятно модуля Эксель через подтверждения пользователя, даже выйду, если форма моей формы на свойство Сancel какEnd Sub Workbooks! Очевидно на
Then wb.Close Next обе книги! Then wb.Close NextApplication.Run «‘Книга3.xls’!Макрос1″,то закрываются VBA оформить. эти действия весь Excel из завешен» End Sub по какой причине, Аксесс полностью закрыть
если .DisplayAlerts = vbModeless? нажатие Esc (на True. Напишите код
метод Hide - такой случай необходимо End Subв 3-ем3. Если перейти ThisWorkbook.Close End Sub обе (все в
SendKeys «%{F4}», TrueUdik
Public Sub ExcelQuit(app макроса не знаюКазанский
CyberForum.ru
он стал выдавать
How to close an Excel workbook using VBA and macros, including how to save the file before you close it or discard any changes.
Sections:
Selecting Which Workbook to Close
Close Workbook While Saving Changes
Close Workbook Without Saving Changes
Let the User Decide to Save Changes or Not
Notes
Selecting Which Workbook to Close
First, we need to tell the macro to choose the current workbook to close or another workbook to close.
Current Workbook
We use this piece of code to close the current or currently active workbook and close that.
Other Workbook
We use this piece of code to close any specific open workbook.
Workbooks("test.xlsx").Close
Replace test.xlsx with the name of the file that you want to close.
Close Workbook While Saving Changes
To have Excel automatically save any changes for the workbook that you want to close, just put True behind the close workbook code from above like this:
ActiveWorkbook.Close True
or, to close a specific file like this:
Workbooks("test.xlsx").Close True
Close Workbook Without Saving Changes
To have an Excel window close WITHOUT saving any changes, just put False behind the close workbook code from above like this:
ActiveWorkbook.Close False
or, to close a specific file like this:
Workbooks("test.xlsx").Close False
Let the User Decide to Save Changes or Not
You use the basic code from the first section and don’t include a True or False after it and a dialog box will open asking if you want to save the file or not; it looks like this:
Close the currently active or visible workbook:
Close a specific workbook:
Workbooks("test.xlsx").Close
Notes
You may run into issues with messages popping up depending on your implementation of this code and your setup and it can help to turn off ScreenUpdating for Excel. Make sure to turn it back on when you are finished though.
If Application.DisplayAlerts is set to False before you close the workbook, you won’t see a popup asking if you want to save it or not before closing it. If this is the case, you may lose data if you wanted to save the file before closing it, so test your code on a sample workbook first.
Download the sample files for this tutorial to test everything out.
Similar Content on TeachExcel
Open Excel Workbook Using VBA Macros
Tutorial:
Simple way to open an Excel workbook using VBA and macros.
Syntax
Workbooks.Open («File…
Macro to get Data from Another Workbook in Excel
Tutorial:
Macro to get data from a workbook, closed or open, over a network or locally on your comp…
Get User Submitted Data from a Prompt in Excel using VBA Macros
Tutorial: How to prompt a user for their input in Excel.
There is a simple way to do this using VBA …
Interactive Clickable Buttons and Interface Without Using VBA/Macros in Excel
Tutorial:
How to make your Excel dashboards and worksheets more interactive and easier to view and …
Loop through a Range of Cells in Excel VBA/Macros
Tutorial: How to use VBA/Macros to iterate through each cell in a range, either a row, a column, or …
Kill Command in Excel (Delete Files Using VBA)
Tutorial:
How to safely remove, delete, kill any Excel file, or other file, using VBA Macros in Exc…