WorksheetBase.Protection Property

Definition

Gets a Protection object that represents the protection options of the worksheet.

public:
 property Microsoft::Office::Interop::Excel::Protection ^ Protection { Microsoft::Office::Interop::Excel::Protection ^ get(); };
public Microsoft.Office.Interop.Excel.Protection Protection { get; }
member this.Protection : Microsoft.Office.Interop.Excel.Protection
Public ReadOnly Property Protection As Protection

Property Value

A Protection object that represents the protection options of the worksheet.

Examples

The following code example gets the value of the Protection property to determine whether cell formatting is currently allowed. If cell formatting is not allowed, then the Protect method is called with the AllowFormattingCells parameter set to true so that cells can be formatted.

This example is for a document-level customization.

private void ProtectCellFormatting()
{
    // Protect cell contents, but do not change any 
    // other protection type. This enables the Protection
    // property to have effect.
    this.Protect(missing, this.ProtectDrawingObjects,
        true, this.ProtectScenarios, this.ProtectionMode,
        this.Protection.AllowFormattingCells,
        this.Protection.AllowFormattingColumns,
        this.Protection.AllowFormattingRows,
        this.Protection.AllowInsertingColumns,
        this.Protection.AllowInsertingRows,
        this.Protection.AllowInsertingHyperlinks,
        this.Protection.AllowDeletingColumns,
        this.Protection.AllowDeletingRows,
        this.Protection.AllowSorting,
        this.Protection.AllowFiltering,
        this.Protection.AllowUsingPivotTables);

    if (!this.Protection.AllowFormattingCells)
    {
        if (DialogResult.Yes == MessageBox.Show("Formatting cells is " +
            "not allowed. Allow formatting cells?", "Example", 
            MessageBoxButtons.YesNo))
        {
            // Allow cell formatting, but do not change any other protection type.
            this.Protect(this.ProtectDrawingObjects, 
                this.ProtectContents, this.ProtectScenarios, 
                this.ProtectionMode, true, 
                this.Protection.AllowFormattingColumns, 
                this.Protection.AllowFormattingRows, 
                this.Protection.AllowInsertingColumns, 
                this.Protection.AllowInsertingRows, 
                this.Protection.AllowInsertingHyperlinks, 
                this.Protection.AllowDeletingColumns,
                this.Protection.AllowDeletingRows, 
                this.Protection.AllowSorting,
                this.Protection.AllowFiltering, 
                this.Protection.AllowUsingPivotTables);
        }
    }
}
Private Sub ProtectCellFormatting()

    ' Protect cell contents, but do not change any 
    ' other protection type. This enables the Protection
    ' property to have effect.
    Me.Protect(DrawingObjects:=Me.ProtectDrawingObjects, _
        Contents:=True, Scenarios:=Me.ProtectScenarios, _
        UserInterfaceOnly:=Me.ProtectionMode, _
        AllowFormattingCells:=Me.Protection.AllowFormattingCells, _
        AllowFormattingColumns:=Me.Protection.AllowFormattingColumns, _
        AllowFormattingRows:=Me.Protection.AllowFormattingRows, _
        AllowInsertingColumns:=Me.Protection.AllowInsertingColumns, _
        AllowInsertingRows:=Me.Protection.AllowInsertingRows, _
        AllowInsertingHyperlinks:=Me.Protection.AllowInsertingHyperlinks, _
        AllowDeletingColumns:=Me.Protection.AllowDeletingColumns, _
        AllowDeletingRows:=Me.Protection.AllowDeletingRows, _
        AllowSorting:=Me.Protection.AllowSorting, _
        AllowFiltering:=Me.Protection.AllowFiltering, _
        AllowUsingPivotTables:=Me.Protection.AllowUsingPivotTables)

    If Not Me.Protection.AllowFormattingCells Then
        If DialogResult.Yes = MessageBox.Show("Formatting cells is " & _
            "not allowed. Allow formatting cells?", "Example", _
            MessageBoxButtons.YesNo) Then

            ' Allow cell formatting, but do not change any other protection type.
            Me.Protect(DrawingObjects:=Me.ProtectDrawingObjects, _
                Contents:=Me.ProtectContents, Scenarios:=Me.ProtectScenarios, _
                UserInterfaceOnly:=Me.ProtectionMode, _
                AllowFormattingCells:=True, _
                AllowFormattingColumns:=Me.Protection.AllowFormattingColumns, _
                AllowFormattingRows:=Me.Protection.AllowFormattingRows, _
                AllowInsertingColumns:=Me.Protection.AllowInsertingColumns, _
                AllowInsertingRows:=Me.Protection.AllowInsertingRows, _
                AllowInsertingHyperlinks:=Me.Protection.AllowInsertingHyperlinks, _
                AllowDeletingColumns:=Me.Protection.AllowDeletingColumns, _
                AllowDeletingRows:=Me.Protection.AllowDeletingRows, _
                AllowSorting:=Me.Protection.AllowSorting, _
                AllowFiltering:=Me.Protection.AllowFiltering, _
                AllowUsingPivotTables:=Me.Protection.AllowUsingPivotTables)
        End If
    End If
End Sub

Applies to