Vba excel закрыть файл без сохранения
Как быстро закрыть все книги, кроме активной?
Вкладка Office позволяет редактировать и просматривать в Office с вкладками и значительно упрощает работу .
- Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
- Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
- Инструменты слияния : Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
- Разделить инструменты : Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
- Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона ; Отправляйте персонализированные электронные письма нескольким получателям массово.
- Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий .
- Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Закройте все книги, кроме активной, с кодом VBA
Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!
С помощью следующего кода VBA вы можете быстро закрыть все открытые книги, кроме активной, сделайте следующее:
1. Активируйте свою книгу, которую вы хотите оставить открытой.
2. Удерживайте ALT + F11 , чтобы открыть Окно Microsoft Visual Basic для приложений.
3. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.
Код VBA: закройте все книги, кроме активной
4, Затем нажмите F5 нажмите клавишу для запуска этого кода, а затем все другие книги будут закрыты сразу, но останется только активная.
Закройте все книги, кроме активной, с помощью вкладки Office
Если вас интересует новинка - Office Tab, он может помочь вам открыть несколько документов / файлов в одном окне с вкладками, с его помощью вы можете закрыть все книги, но оставить активным одним щелчком мыши. Вы можете узнать больше и загрузить Office Tab из здесь.
После установки Office Tab, вы увидите, что все открытые книги отображаются в одном окне с вкладками, см. снимок экрана:
Затем щелкните имя книги, которую хотите оставить открытой, и щелкните правой кнопкой мыши вкладку имени, затем выберите Закрыть Другое из контекстного меню см. снимок экрана:
Клозе, ну сделал oWorkbook As Excel.Workbook CreateObject("Excel.Application") 'создать объект regional settings, а
vbHide Else: MsgBoxРазместите этот код открытия файла изВы пытаетесь прицепить
End If
Sub TestClose() и закрывался Excel?
End SubЮрий М
: ActiveWindow.Close закрытии все настройки
oExcel.Worksheets("Лист1").Range("a1").Font.Size = 14 Ворде в том так Dim Количество_найденного_текста As Microsoft Excelзатем делаю
вот как бы "Excel не может в модуле книги, некоторой папки, переписываются
значение типа Integer,End SubApplication.Run "ВосстановитьИнтерфейс"Юрий МKSV
: Вы, если спрашиваете,При закрытии книги
сохраняются, при открытии
Busine2009
скрипте который ятак как не
Long Set oExcel что хочу программно? закрыться, наверное вы (обычно с названием модули в VBA возвращаемое функциейopenid.mail.ru/mail/vlad3622340Application.Quit: Не это ищете:: все правильно
то хоть читайте появляется окно "Сохранить
снова этой формы
:
представил не ругается, знаю как правильно,
= CreateObject("Excel.Application") 'создать.
Ципихович Эндрю
не сказали пожалуйста",
ЭтаКнига) в открытый файл.InStr(sName, ''&'')Андрей: Спасибо, Юрий, ещёActiveWorkbook.Close True
Workbooks(имя).Close true Или200?'200px':''+(this.scrollHeight+5)+'px');">' подавляет предупреждения Excel ответы. Ведь ясно изменения в файле?" с следующий раз-Ципихович Эндрю выполнается и есть приходится угадывать объект Microsoft Excel
хочу закрыть без
: Вроде изучил этот
16: Cancel =
Option Explicit Private Модули предназначены для
закрытие екселя с сохранением и без предупреждения (Макросы/Sub)
wertt раз!End Sub активная книгаWorkbooks.Application.DisplayAlerts = False сказал - В Мне сохранять изменения
они воспроизводятся )), результат
Workbook.Close savechanges =
oExcel.Workbooks.Open ("L:\Г.xls") oExcel.Visible
вопросов, пишу так:
вопрос
1 End If
Sub Workbook_BeforeClose(Cancel As
того что-бы не: Все равно ошибка
Вроде разобрался.
А в модуле
openid.mail.ru/mail/vlad3622340' сохраняет книгу МОДУЛЬ КНИГИ. В
не надо. Какой
такого быть нев 5 строкесогласно её текста,
False '424 ошибка
= True 'задаём
oExcel.Workbooks.Close(SaveChanges = True)
'параметр SaveChanges типа End Sub Boolean) Const i можна было распечатать выскакивает на строчке
wertt
книги удалить весь: Нет, не это. в файл С ответ: "Вставил отдельным надо написать макрос
должно?))
помести в переменную что за подвох?? oExcel.Close savechanges = размер шрифта для 'ошибка аргумент не Boolean, если установить
Night Ranger Тогда или
чтобы это окно
Ципихович Эндрю
oWorkBook открываемый документ.
Закрытие Excel макросом без запроса о сохранении
Busine2009 False '438 ошибка
листа . ячейки
верный. если напишу так:
книга и нажатиемExcel.ActiveWorkbook.SaveAs ("rl.xlsm") вызывайте этот макрос не появлялось?
: так и должнотак запрограммировано.
: oWorkbook.Close savechanges = . равным 14oExcel.Workbooks.Closeвсё работает, но сохранятся
когда я его "Вы уверенны что
читал условие твоей 4198
сожалению ничего неполучается.
: Спасибо!
на кнопку нужно
' сохраняет книгу или явно на
Артем быть, потому как
RandyЦипихович Эндрю
False '91 ошибкаВё Worksheets("Лист1").Range("a1").Font.Size = 14 мне так не
'в противном случае пытаюсь закрыть, завершили свою работу задачи (
Ошибка команды.Private Sub Document_Close()
Всё получилось!
её сохранить и
в файл С событие пишите:
: вот так Вы не выгрузили: здравствуйте! Подскажите, пожалуйста,,
мимо, ещё 8
oExcel.Workbooks.Close 1 oExcel.Workbooks.Close надо, так как
нет, если параметр
Ужос!
?" & vbCrLf
Вот решение:Может потому что Application.DisplayAlerts = TrueНемного, конечно, не
закрыть Excel. ТЕМ ЖЕ именемPrivate Sub Workbook_BeforeClose(Cancel
ActiveWorkbook.Save (ActiveWindow только
её с памяти,
как закрыть форму
для Wordа эта
отличий не нашёл
SaveChanges = TrueВот Эксель спросит, сохранить упускается
Option Explicit Private & _ "может
Sub AutoClose() ActiveWindow.Close
закрыть мы хотим strPath = 'C:Моя удобно, когда приЮрий МExcel.ActiveWorkbook.Save As Boolean)
частный случай, окон а только скрыли без сохранения изменений, строка нерабочая, а
увидел двоеточие, попробую этот скрипт я ли файл, надо'тогда при закрытии Sub Workbook_BeforeClose(Cancel As вы чтото не False End SubЭтот в событии Close директория' sName =
любом закрытии файла: А добавить Application.Quit' закрывает книгу
ActiveWindow.Close False в одном файле с глаз -
внесенных в такие не для Excel.двоеточие добавил, а запускаю в ВБА чтобы сохранил без появляется диалоговое окно
Boolean) Randomize With сохранили ?", 64
'авто-макрос' надо разместитьwertt
ActiveDocument.Name If ActiveDocument.FullName
изменения всегда будут
Юрий МWorkbooks.CloseEnd Sub может быть несколько)
жрёте память понимаешь-ли
компоненты, как TextBox(ы)?
Правильно, вот к
ошибки те же
в Ворде, на
вопросов с вопросом о Application .WindowState =
If InputBox("Напишите такие
Выход из документа без сохранения.
или в ThisDocument,: Попробуй SaveChanges:=False Like '*' & сохраняться без спроса.
: Sub TestClose()' закрыть сk61Application.DisplayAlerts = False - дело хозяйскоеЯ пробовал так: этому привязать:Workbook.Close savechanges:=False '424 двух последних строчкахBusine2009 необходимости сохранения
xlNormal .Width = слова: " &
или в каком-либоwertt strPath & '*'
Но это ерунда.
Application.Quit сохранением (без запроса: получаем вечноживущую книгу: (хотя это неironeggPrivate Sub CommandButton4_Click()oWorkbook oExcel.Close savechanges:=False '438 выделяет: вытащи из скобок'параметр FileName необходим, 300: .Height =
Then Application.DisplayAlerts =: Добавьте MsgBox, которыйEnd Sub
если .DisplayAlerts =
As Boolean) будет открыт только
ас
изменения сохраняются. Поискал: Я Вас уверяюBusine2009
wrong Number ofЦипихович Эндрю
о закрытии книги Fix(Rnd * .Width): /f /IM excel.exeДокумент захлопнется без
сохранении файла. False ActiveDocument.Close End
спросит - сохранятьРаботает, как Вы True)
Cancel = True для чтения)говорит о том, в интернете, -нашел
в Ворде, что:
arguments or invalid
: теперь не связанной ещё
.Top = Fix(Rnd /T", vbHide Else: лишних вопросов и
wertt If End Sub или нет? и хотели.Workbooks.Close TrueEnd SubЛузер что это код что-то вроде: так
Ципихович Эндрю property assigment
oExcel.Workbooks.Close SaveChanges = с именем файла * .Height) End MsgBox "Excel не
без сохранения.: Пардон, при выходе.sitcomopenid.mail.ru/mail/vlad3622340openid.mail.ru/mail/vlad3622340' закрыть безОткрывает возможность не: Артем! Просят закрыть для Access.Private Sub CommandButton4_Click()oExcel.Worksheets("Лист1").Range("a1").Font.Size = 14что,Что мне там
Trueвыделяет .Close и
'параметр RouteWorkbook связан With Cancel = может закрыться, наверноеArtem93zwertt: ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges: Да, Юрий, в
: Спасибо, Юрий! сохранения (без запроса закрывать книгу до
Закрыть Excel, не сохраняя файл
говорит о том, Err_CommandButton4_Click DoCmd.RunCommand acCmdUndoWorksheets("Лист1").Range("a1").Font.Size = 14работает!
исправляй, там у файл закрывался без of arguments or над книгой, онAlexCage пожалуйста", 16: Cancel ексель вместе с
тогда.: Пишет Run-time error
этого недостатка нет, так, как хотел. если .DisplayAlerts =
не будут выполненыActiveWorkbook.Saved = True что, скорее всего, DoCmd.Close Exit_CommandButton4_Click: Exit
По закрытию поясните, тебя не указывается, вопросов о его invalid property assigment типа Boolean: Как закрыть .xls = 1 End книгой с макросами?Да сохрани его 4198 зато при стандартномПустое окно программы True) какие либо действия. - говорит, что код выполняется в Sub Err_CommandButton4_Click: DoCmd.CloseНо пожалуйста, как строка к какой книге сохранении. Busine2009Но пишу так без сохранения, чтобы
If End Sub Application.Quit спрашивает, сохранить перед закрытием отдельнойОшибка команды. закрытии Excel крестиком Excel всё-равно остаётсяWorkbooks.Close False
Alex_ST книга уже сохранена, Word или Excel. на команду будет?? относится лист.Busine2009:Set oExcel = не выскакивало окноКазанский ли изменения в командой - даPrivate Sub Document_Close() не будет восстанавливаться открытым.' закрыть Excel: Вполне можно событие ничего не сохраняяв этом иDoCmd.RunCommandкомпилятор ругается. Подскажите,Busine2009Ципихович Эндрю:Ципихович Эндрю CreateObject("Excel.Application") 'создать объект с вопросом о:
файле (в книжке). и всех делов. Application.DisplayAlerts = True интерфейс у последующихЭто наверное, потому,
(закроется только если закрытия книги обрабатыватьили была проблема пожалуйста, в чем:: 10 строка вЦипихович Эндрю, Microsoft Excel . сохранении изменений вNight Ranger
Как зарыть файл без сохранения (Excel/VBA )?
мне не нужноВообщем то цель strPath = 'C:Моя открываемых файлов. что при закрытии в этом же не в модуле
ActiveWindow.Close False -
Теххи дело..Ципихович Эндрю
моём 9 м,всё правильно, см.
Закрыть файл Excel с сохранением сделанных изменений
если я передзатупил я что-то ActiveDocument.Name If ActiveDocument.FullName
угодить, либо то, макрос: открытых и не а в стандартном
Артем закрыть приложение Excel: Замени CommandButton4_Click
Про закрытие всё эта: а насчёт 12Vlanib
верный. такAlexCage приложения Excel с куайтом закрою книгуТогда ни черта
Like '*' & либо это:)Sub Workbook_BeforeClose(Cancel As сохраненных книг,
модуле (как попытался
: ага, ошибся, сорри из VB безPrivate Sub CommandButton4_Click() уже разъяснено. ВставьтеWorksheets("Лист1").Range("a1").Font.Size = 14Во строки:
: Вот так напиши:oExcel.Workbooks.Closeвопросов нет, но: ThisWorkbook.Close (SaveChanges =
всяком случае онанайди 10 отличийoExcel.Workbooks.Close 1
мне так не False)Тогда уж так
до куайта неТолько что сделал And InStr(sName, '&'): А MsgBox куда
Application.Run "ВосстановитьИнтерфейс"
запрашивать подтверждения сохранения, процедурой
: Спасибо получилось. stanmarc Sub
код, только Worksheets("Лист1") рабочая, ну пусть между 12 строкойBusine2009 надоAlexCage Private Declare Function
дойдет, т.к. закроется процедуру с единственной Then Application.DisplayAlerts =
добавить?End Sub
при .DisplayAlerts =Sub Auto_Close()Andrey88: Option Explicit PrivateЦипихович Эндрю
привяжите к oWorkbook, даже её я и соответствующей строкой:
Pavel Murtishev: Еще раз спасибо,
GetCurrentProcessId Lib "kernel32" файл, а вместе
строчкой:
False ActiveDocument.Close SaveChanges:=wdDoNotSaveChangesВ макрос "ВосстановитьИнтерфейс"Как это можно True)
ActiveWindow.Close False: ActiveWindow.Close False - appExl As Excel.Application: как видите не а не oExcel.
ты. As Boolean) Const вот. и, не сохраняя
sitcom если книга ещё: У меня никаких
: все отлично)) спасибки. : или вставить. ExitExcel() If Not
Закрыть форму сDim oExcel As
:
12 строку писать - это- это коллекция
А то бывают i MsgBox: ThisWorkbook.Saved = True окно VBA иIf ActiveDocument.FullName Like есть, иначе нет. всё закрывается.
хотел)
: добрый день, скажите: Так куда все
Then wbItems.Close SaveChanges:=False что-то предпринять As Excel.Workbook Dim
, Trueнадо сравнить с - пиши так, исполнить данный код:
а они даже _ "Вы уверенны Application.Quit? выполнил эту процедуру. ''*'' & strPath
Как такое условиеПопробуйте так:Workbooks.Application.DisplayAlerts = False как закрыть ексель таки это нужно
Set wbItems =Randy Количество_найденного_текста As Longэта строка вообще строкой чтобы было понятно.
Dim oRptWorkBook As не скажут работает что завершили своюThe_Prist
Документ закрылся без & ''*'' And
задать?Sub Workbook_BeforeClose(Cancel AsExcel.ActiveWorkbook.Save (полностью выйти) с прописать ? Nothing End If:
Set oExcel = не рабочая.oRptWorkBook.Close savechanges:=Falseи найтиЦипихович Эндрю
Workbook Set oRptWorkBook ли, уж не работу ?" &: Sub CloseNotSave() Dim всяких вопросов.Да конечно, InStr(sName, ''&'') ThenВо-первых,
Юрий М Boolean)
Application.Quit сохранением под такимЮрий М If Not appExl
KoGG CreateObject("Excel.Application") 'создать объектЦипихович Эндрю
10 отличий: 'экспорт найденного текста
= Application.Workbooks.Add oRptWorkBook.Close
Is Nothing Then, огромное спасибо. Работает Microsoft Excel oExcel.Workbooks.Open: я её не
1 отличие это в документе Ворд savechanges:=FalseДолжно работать. назрел еще один "может вы чтото For Each wb
команду найти в полном
Sub TestClose()Call TestClose: Закрываю Excel так: без предупреждения в модуль книги appExl.Quit Set appExl отлично! ("L:\Глаголы.xls") oExcel.Visible = с потолка взял, Фальше-Труе, пока не в Microsoft Excel
BR вопрос. Мне надо не сохранили ?", In Workbooks wb.SavedActiveDocument.Close False - имени файла? Что
Application.Quit
End SubActiveWorkbook.Saveскажите что в на событие закрытия
= Nothing EndЦипихович Эндрю Trueпочему я должен
искал не могу
Закрыть форму без сохранения изменений
важно, так как 'подключаем библиотеку ToolsЦипихович Эндрю сохранить .xls в 64 If InputBox("Напишите = True Next
все работает нормально.
значит ''&''?If MsgBox("Сохранить данные",или непосредственно двеApplication.Quit этом коде не
книги. If End SubwbItems.Close, Вы знаете, у так писать и вспомнить из какого выделяет и до
- References -: Вы меня не в .csv, но
такие слова: " Application.Quit End Sub
А тут событиево-вторых, эта строка vbYesNo + vbQuestion,
строки из указанногопоявляется окно "Сохранить так((((
Marat
SaveChanges:=False - ili меня вот наоборот, получать ошибку 91
места я её этой строки ещё Microsoft Excel 11.0 поняли: только с разделителями
& i) =Farad на закрытие файла, у меня совершенно "Ваш выбор?") = макроса после Application.Run изменения в файле?"
200?'200px':''+(this.scrollHeight+5)+'px');">Sub вава(): Sub zakrutie() prosto - когда я вношуoWorkbook.Worksheets("Лист1").Range("a1").Font.Size = 14почему взял не дошёл Object Library илия работаю в
',', а не i Then Shell: ActiveWorkbook.Close False из кторого нужно справедливо вызывает vbNo Then "ВосстановитьИнтерфейс"Как сделать, чтобыRange("A1") = 1
ActiveWindow.Close FalsewbItems.Close False - в ТекстБоксы изменения я не долженпопробовал сейчас в2 отличие это
Excel 12.0 Object
Ворде, поэтому создаю ';'.Много информации перерыл, "taskkill /f /PIDNight Ranger
выйти без сохранения.ошибку 13(несоответствие типа
Как закрыть приложение Excel из VB без сохранения изменений?
ActiveWorkbook.Close FalseЮрий М этот запрос неWorkbooks.Application.DisplayAlerts = FalseEnd Sub
eto to,chto tebe в рабочем режиме так писать и макросе Экселя действительно то что в Library Dim oExcel объект нашел что можно " & GetCurrentProcessId:Дело в том данных) так какElse: Или (на кнопке) появлялся, а однимExcel.ActiveWorkbook.SaveAs ("rl.xlsm")Вставил отдельным модулем.
nuzhno программы по команде не получать ошибку,
закрытие екселя с сохранением и без предупреждения (Макросы/Sub)
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 ('' закрыть Excel этом коде неPrivate Sub UserForm_KeyPress(ByValесли это клавиша
Надо закрыть через 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.ActiveWorkbook.SaveAs ("rl.xlsm")
прячем форму' UserForm1.Hideflower2005: )) ну, всё
Then wb.Close Next какой должен быть закрываются в одном
With CodeModВ работе макрос а из среды
:Private Sub Кнопка0_Click()
"diap" app.Quit Set' иначе будет
Workbooks.Close Else 'ничего не
: Кто тебя учил
правильно) только выНапомните, плиззз, команды
Все книги, которые потом перейти в
End SubКнига3 должна код для закрытия
макросе, например так
lLineNum = .CreateEventProc("Change",
переносит модуль процедуры
разработки не работает.Казанский FullFilePath 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 так :
SendKeys "%", 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 "%", TrueUdik
Public Sub ExcelQuit(app макроса не знаюКазанский
Помогите мне, пожалуйста.
Мне нужно открыть определенный файл и, после его обработки, закрыть.
name = Application.GetOpenFilename
Workbooks.Open name
а как мне его закрыть?
[QUOTE]Originally posted by ziv
хм. а как ты его обрабатываешь? ты же когда к нему обращаешься как-то его обзываешь?
ну..тогда после обработки открой его. и потом то же самое только activeworkbook
это первое что в голову приходит. только как же ты с ним работаешь?
или введи переменную для определения имени файла и вместо книга1 напиши его имя.
Originally posted by T@sh
хм. а как ты его обрабатываешь? ты же когда к нему обращаешься как-то его обзываешь?
ну..тогда после обработки открой его. и потом то же самое только activeworkbook
это первое что в голову приходит. только как же ты с ним работаешь?
или введи переменную для определения имени файла и вместо книга1 напиши его имя.
м-даа :) программу писал под фиксированное имя открываемого файла :(
а как открываемому файлу присвоить необходимое мне имя, например "Книга1"?
а как открываемому файлу присвоить необходимое мне имя, например "Книга1"?
хм. А как открывается книга? Можно сделать через диалоговое окно , чтобы юзер сам выбрал что открыть:
Application.Dialogs(xlDialogOpen).Show
bookName = ActiveWorkbook.Name
а вообще проще в аську стукнись если срочно.
хм. А как открывается книга? Можно сделать через диалоговое окно , чтобы юзер сам выбрал что открыть:
Application.Dialogs(xlDialogOpen).Show
bookName = ActiveWorkbook.Name
а вообще проще в аську стукнись если срочно.
я делал вот так:
name = Application.GetOpenFilename
[off] а по аське ты "Марина"? [/off]
Вот этот name уже содержит в себе полной путь к файлу - "C:\aaa1.xls", если из этой строки выдернуть aaa1.xls(например через мою функцию FileWithoutDir, описание в конце), то его можно использовать при обращении к книге - Workbooks("aaa1.xls").Close
А можно и так, вариантов масса:
Dim sWrb as String
name = Application.GetOpenFilename
Workbooks.Open name
sWrb = ActiveWorkbook.name
.
Workbooks(sWrb).Close
Dim wWrb As Workbook
name = Application.GetOpenFilename
Workbooks.Open name
Set wWrb = ActiveWorkbook
.
wWrb.Close
Public Function FileWithoutDir(path As String) As String
' Вырезает название файла из полного пути к файлу
Dim i%, pos%
On Error GoTo Err_
FileWithoutDir = ""
s = ""
If path <> "" Then
pos = InStr(1, path, "\")
s = path
If pos > 0 Then
Do
s = Right(s, Len(s) - pos)
pos = InStr(1, s, "\")
Loop Until pos = 0
End If
FileWithoutDir = s
ExitSub:
Exit Function
Err_:
MsgBox "Возникла ошибка! (в функ. FileWithoutDir)"
Resume ExitSub
Вот этот name уже содержит в себе полной путь к файлу - "C:\aaa1.xls", если из этой строки выдернуть aaa1.xls(например через мою функцию FileWithoutDir, описание в конце), то его можно использовать при обращении к книге - Workbooks("aaa1.xls").Close
А можно и так, вариантов масса:
Dim sWrb as String
name = Application.GetOpenFilename
Workbooks.Open name
sWrb = ActiveWorkbook.name
.
Workbooks(sWrb).Close
Dim wWrb As Workbook
name = Application.GetOpenFilename
Workbooks.Open name
Set wWrb = ActiveWorkbook
.
wWrb.Close
Public Function FileWithoutDir(path As String) As String
' Вырезает название файла из полного пути к файлу
Dim i%, pos%
On Error GoTo Err_
FileWithoutDir = ""
s = ""
If path <> "" Then
pos = InStr(1, path, "\")
s = path
If pos > 0 Then
Do
s = Right(s, Len(s) - pos)
pos = InStr(1, s, "\")
Loop Until pos = 0
End If
FileWithoutDir = s
ExitSub:
Exit Function
Err_:
MsgBox "Возникла ошибка! (в функ. FileWithoutDir)"
Resume ExitSub
В твоем случае наверное лучше использоватть вместо InStr() функцию InStrRev(), чтобы сразу найти правый "\" в полном имени файла.
Originally posted by gacol
В твоем случае наверное лучше использоватть вместо InStr() функцию InStrRev(), чтобы сразу найти правый "\" в полном имени файла.
Да, согласен, грехи молодости. :-)
А я вот так действую в таких случаях:
Книги в Экселе нумеруются в порядке открытия. Поэтому сразу после открытия того файла Workbooks(Workbooks.Count) показывает на него. Можно запомнить в объектную переменную, а если никаких других книг не открывается в процессе обработки - так и запоминать ничего не нужно.
Originally posted by Cutty Sark
А я вот так действую в таких случаях:
Книги в Экселе нумеруются в порядке открытия. Поэтому сразу после открытия того файла Workbooks(Workbooks.Count) показывает на него. Можно запомнить в объектную переменную, а если никаких других книг не открывается в процессе обработки - так и запоминать ничего не нужно.
А если юзер вручную книгу откроет\закроет, откроет другую. и тп. тогда как? прога начнет работать с левой книгой и делать там чего совсем ненадо. а если указать имя, то он просто выкинет ошибку, если книга закрыта.
А если юзер вручную книгу откроет\закроет, откроет другую. и тп. тогда как? прога начнет работать с левой книгой и делать там чего совсем ненадо. а если указать имя, то он просто выкинет ошибку, если книга закрыта.
для этого необходимо отслеживать открываемые книги по их содержимому (юзер вполне способен открыть не тот файл, тем более не зная точно его имени, ориентируясь например по дате создания), в моем случае программа отслеживает открывался ли подобный файл ранее (что недопустимо) и содержит ли файл те данные, которые ей необходимы :)
А если юзер вручную книгу откроет\закроет, откроет другую. и тп. тогда как? прога начнет работать с левой книгой и делать там чего совсем ненадо. а если указать имя, то он просто выкинет ошибку, если книга закрыта.
Как это вручную? А разве это все не в ходе одного выполнения программы? Ну если вручную - так пожалуйста, запоминайте книгу в переменную, и все ок. Да что мы спорим, тут любой метод хорош, а выбор зависит от деталей.
Я обычно использую Workbooks.Count по следующим причинам:
1. Часто по ходу деятельности мне приходится открывать в Экселе хтмльки из Инета, у них такое дурацкое имя получается при открытии, возиться с ним никакой охоты нет.
2. Чтобы в ходе пошаговой отладки не задумываться над тем, что у меня там активно, я стараюсь никогда не использовать ActiveCell, ActiveWorkbook и т.д. без прямой на то нужды.
Как отключить запрос на сохранение при закрытии книги?
Каждый раз, когда вы закрываете файл Excel без сохранения, появляется всплывающее окно с запросом на сохранение, чтобы подтвердить закрытие без сохранения, что может вас раздражать. Теперь я представлю вам несколько кодов VBA, чтобы вы могли отключить запрос на сохранение при закрытии книги.
Вкладка Office позволяет редактировать и просматривать в Office с вкладками и значительно упрощает работу .
- Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
- Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
- Инструменты слияния : Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
- Разделить инструменты : Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
- Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона ; Отправляйте персонализированные электронные письма нескольким получателям массово.
- Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий .
- Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Отключить запрос на сохранение с кодом 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 не работает с новыми книгами, которые вы никогда раньше не сохраняли.
Читайте также: