Close Method of Workbook Object VBA

We can close workbook by using ‘Close method of workbook object in Excel VBA. It closes the workbook object. Please find the following brief description about close method of workbook object.



50+ Project Management Templates Pack
Excel PowerPoint Word

Advanced Project Plan & Portfolio Template
Excel Template

Business Presentations Templates Pack
PowerPoint Slides

20+ Excel Project Management Pack
Excel Templates

20+ PowerPoint Project Management Pack
PowerPoint Templates

10+ MS Word Project Management Pack
Word Templates

Why we need to Close a Workbook using VBA?

Once we perform the tasks in Excel Workbook, we need to close the workbook. And the whenever we want we can reopen Workbook again.

VBA Close Workbook – Syntax

Here is the syntax to close workbook using VBA.

Workbooks(“Your Workbook Name”).Close(

[SaveChanges], [Filename], [RouteWorkbook])

In the above syntax we are using ‘Close’ method of workbook object to close the workbook.

VBA Close Workbook: Example 1

Please find the below example, It will take you through to close workbook where SaveChanges:=True.

Sub Close_Workbook()
Dim Wkb As Workbook
Set Wkb = Workbooks.Open("D:\Sample.xlsx")
Wkb.Close Savechanges:=True
End Sub


In the above example we have created variable named Wkb in the first statement. We have used Open method of workbook object to open specified workbook named ‘D:\Sample.xlsx’ and then assigned it to object named Wkb in the second statement. At last in the third statement we have used ‘Close’ method of workbook object to close above specified workbook. Finally we have mentioned ‘Savechanges:=True’, that means if we have done any changes in the worksheet it will save the changes.

VBA Close Workbook: Example 2

Please find the below example to close workbook where SaveChanges:=False.

Sub Close_Workbook()
Workbooks (“ D:\Sample.xlsx").Close Savechanges:=False 
End Sub


The above example is same as like example 1 which we explained in the above. The difference is we have mentioned ‘Savechanges:=False, that means if we made any changes in the worksheet it discards any changes that have been made to it.

VBA Close Workbook: Example 3

Please find the below example to close workbook where SaveChanges:=False.

Sub Close_Workbook()
End Sub


The above mentioned code closes the active workbook.

VBA Close Workbook – Instructions

Please follow the below step by step instructions to execute the above mentioned VBA macros or codes:

  1. Open an Excel Workbook
  2. Press Alt+F11 to Open VBA Editor
  3. Insert a Module from Insert Menu
  4. Copy the above code for activating a range and Paste in the code window(VBA Editor)
  5. Save the file as macro enabled workbook
  6. Press ‘F5’ to run it or Keep Pressing ‘F8’ to debug the code line by line.

Leave A Comment

Related pages

agenda template excelexcel coding tutorialexcel 2010 vba progress barexcel graphs tutorialexcel select rowsexcel vba unselecthow to lock an excel filebasic macro exceldatabase interview questions for freshershow to unhide column a in excel 2007excel vba create rangechange column width in excelproject management templates excelbasic excel for beginnerssyntax of vlookupexcel vba if statementunprotect excel workbook vbahow to insert a row in excel 2007asap utilities 64 bit downloadexamples of hlookupsql query to excelmacroeconomics exam questions and answersexcel 2010 autofit row heightcheckbox en excelmicrosoft excel macros tutorialvba excel database examplesthisworkbook vbadeveloper tab in excelbasic excel macro examplessql query excel vbaexcel concanateaccess vba sqlvba oracle connection stringunhide a row in excelexcel insert rows shortcutexcel function lookupdim rs as recordsetdeveloper tab in excel 2007insert row vbaexcel vba dashboardrecordset access vbamacro to delete duplicate rows in excelvba excel cell colorvba for excel examplesexcel finding duplicatesvba elsevba argumentsexcel vba status bar messagevba excel dynamic arrayhow to find duplicates in excel 2010vb excel arrayhow to insert a checkbox in excelloop in vbavba loop syntaxlookup value excelreverse vlookup in excelmultiple project timeline template excelexcel vba named rangeexcel lookupscondition formula in excelcombo box excel 2007excel unhide tabsexcel checkbox cellshortcut for insert row in excelsorting sqlload userformvba practice projectsactive worksheet vbaexcel exam questions and answersdelete cells vbaadd item combobox vbaexcel iserror functionsas programming video tutorials