Finding the Size of a Workbook

Mike wonders if there is a worksheet function that will show him the size, in bytes, of a workbook without using a macro.

The size of a workbook in Excel can become very large, depending on the information it contains. Keeping track of the size is important and can be accomplished a couple of different ways.

If you don’t want to use a macro, Excel keeps track of various pieces of information about a file in the Properties dialog box. How you display the dialog box depends on the version of Excel you are using. If you are using Excel 2010 or Excel 2013, follow these steps:

  1. Display the File tab of the ribbon.
  2. Make sure the Info option is selected at the left side of the dialog box.
  3. Click the Properties link near the right side of the dialog box and then click Advanced Properties. Excel displays the Properties dialog box for your workbook.
  4. Make sure the General tab is displayed. (See Figure 1.)
  5. Figure 1. The General tab of the Properties dialog box.

If you are using Excel 2007, follow these steps instead:

  1. Click the Office button and then click Prepare | Properties. Excel displays the Document Properties pane just below the ribbon and above the your worksheet.
  2. Click Document Properties and the choose Advanced Properties. Excel displays the Properties dialog box.
  3. Make sure the General tab is displayed.

In the General tab, Excel displays the size of the file. You will also see other information about the file in this tab including the type of file and who created it. Manually obtaining the file size is simple using this process, but it does not allow you to see the workbook size on the worksheet itself. Unfortunately, there is no way around it; you will need to use a macro. The following is a good example of one you could use:

Function wbksize()
    myWbk = Application.ThisWorkbook.FullName
    wbksize = FileLen(myWbk)
End Function

To use this macro within a worksheet, just type the following in any cell:

=wbksize()

The file size is displayed in bytes.