В тази статия ще научим как да превъзхождаме близката работна книга, използвайки VBA в Microsoft Excel 2010.
След като вашият VBA макрос / код изпълни всички необходими действия, бихте искали макросът или да запише файла, или да пропусне запазването му. Така че тук са опциите, които можете да зададете в кода, докато го молите да затвори файла. Методът Close и Open във VBA може да се използва за затваряне и отваряне на работни книги.
Ако искате кодът просто да затвори файла, без да запазва промените - използвайте този ред в края на кода или където е необходимо -
ActiveWorkbook.Close (False) или ActiveWorkbook.Close False или ActiveWorkbook.CloseSaveChanges: = FALSE
Вижте кода на тази снимка по -долу. За да копирате кода, натиснете Alt + F11 на клавиатурата, като същевременно се уверите, че листът на Excel е отворен. След това щракнете с десния бутон върху Microsoft Excel Objects и изберете Insert. След това щракнете върху Модул. Копирайте кода, даден под снимката -
Опция Изрично
Подмакрос1 ()
ActiveWorkbook.Close False
End Sub
Забележка: Можете да промените текста ActiveWorkbook така, че да се отнася до името на работната книга или променливата, която сте използвали за идентифициране на работната книга според вашия код.
Ако искате кодът да запише промените, докато затваряте файла, използвайте
ActiveWorkbook.Close (Вярно) или ActiveWorkbook.Close True или ActiveWorkbook.Close SaveChanges: = TRUE
Ето кода -
Опция Изрично
Подмакрос1 ()
ActiveWorkbook.Close True
End Sub
Ако обаче искате потребителят да реши, просто трябва да влезете
ActiveWorkbook.Close
Ето кода -
Опция Изрично
Подмакрос1 ()
ActiveWorkbook.Close
End Sub
Потребителят ще получи изскачащ прозорец с въпрос дали иска да запази работната книга или не.
Работни книги ("File1.XLS"). Затворете SaveChanges: = False
Този пример ще затвори File1.xls и ще отхвърли всички промени, направени в него.
Заключение:
Ако „Application.DisplayAlerts“ е зададено на False, няма да получите изскачащи прозорци и работната книга ще се затвори директно, без да бъдете подканени да запишете.
Този изскачащ прозорец ще се появи, ако „Application.DisplayAlerts“ не е зададено на False никъде преди excel vba Activeworkbook.Close ред код.
Така че дори ако кодът изисква да изключите сигналите, уверете се, че „Application.DisplayAlerts = True“ присъства пред реда Activeworkbook.Close.
Ако ви харесаха нашите блогове, споделете го с приятелите си във Facebook. Можете също така да ни следвате в Twitter и Facebook.
Ще се радваме да чуем от вас, уведомете ни как можем да подобрим, допълним или обновим работата си и да я подобрим. Пишете ни наимейл сайт