Sheets.Add method (Excel)
Creates a new worksheet, chart, or macro sheet. The new worksheet becomes the active sheet.
Syntax
expression.Add (Before, After, Count, Type)
expression A variable that represents a Sheets object.
Parameters
Name | Required/Optional | Data type | Description |
---|---|---|---|
Before | Optional | Variant | An object that specifies the sheet before which the new sheet is added. |
After | Optional | Variant | An object that specifies the sheet after which the new sheet is added. |
Count | Optional | Variant | The number of sheets to be added. The default value is the number of selected sheets. |
Type | Optional | Variant | Specifies the sheet type. Can be one of the following XlSheetType constants: xlWorksheet, xlChart, xlExcel4MacroSheet, or xlExcel4IntlMacroSheet. If you are inserting a sheet based on an existing template, specify the path to the template. The default value is xlWorksheet. |
Return value
An Object value that represents the new worksheet, chart, or macro sheet.
Remarks
If Before and After are both omitted, the new sheet is inserted before the active sheet.
Example
This example inserts a new worksheet before the last worksheet in the active workbook.
ActiveWorkbook.Sheets.Add Before:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count)
This example inserts a new worksheet after the last worksheet in the active workbook, and captures the returned object reference in a local variable.
Dim sheet As Worksheet
Set sheet = ActiveWorkbook.Sheets.Add(After:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count))
Note
In 32-bit Excel 2010, this method cannot create more than 255 sheets at one time.
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.