Skip to main content

Range.Insert method

Inserts a cell or a range of cells into the worksheet or macro sheet and shifts other cells away to make space.

Syntax

expression.Insert (Shift, CopyOrigin)

expression A variable that represents a Range object.

Parameters

Name Required/Optional Data type Description
Shift Optional Variant Specifies which way to shift the cells. Can be one of the following XlInsertShiftDirection constants: xlShiftToRight or xlShiftDown. If this argument is omitted, Microsoft Excel decides based on the shape of the range.
CopyOrigin Optional Variant The copy origin; that is, from where to copy the format for inserted cells. Can be one of the following XlInsertFormatOrigin constants: xlFormatFromLeftOrAbove (default) or xlFormatFromRightOrBelow.

Return value

Variant

Remarks

There is no value for CopyOrigin that is equivalent to Clear Formatting when inserting cells interactively in Excel. To achieve this, use the ClearFormats method.

With Range("B2:E5")
    .Insert xlShiftDown
    .ClearFormats
End With

Example

The following example inserts a row above row 2, copying the format from the row below (row 3) instead of from the header row.

Range("2:2").Insert CopyOrigin:=xlFormatFromRightOrBelow

The following example inserts a blank row between existing rows

Range("A2:A8").Rows(2).EntireRow.Insert

Leave a comment

Your email address will not be published. Required fields are marked *

Format your code: <pre><code class="language-vba">place your code here</code></pre>