次の方法で共有


WorksheetBase.Protection プロパティ

ワークシートの保護オプションを表す Microsoft.Office.Interop.Excel.Protection オブジェクトを取得します。

名前空間:  Microsoft.Office.Tools.Excel
アセンブリ:  Microsoft.Office.Tools.Excel.v4.0.Utilities (Microsoft.Office.Tools.Excel.v4.0.Utilities.dll 内)

構文

'宣言
Public ReadOnly Property Protection As Protection
public Protection Protection { get; }

プロパティ値

型 : Microsoft.Office.Interop.Excel.Protection
ワークシートの保護オプションを表す Microsoft.Office.Interop.Excel.Protection オブジェクトです。

次のコード例では、Protection プロパティの値を取得し、セルの書式設定が現在許可されているかどうかを確認します。セルの書式設定が許可されていない場合は、セルの書式を設定できるように、AllowFormattingCells パラメーターが true に設定され、Protect メソッドが呼び出されます。

この例は、ドキュメント レベルのカスタマイズ用に作成されています。

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
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);
        }
    }
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

WorksheetBase クラス

Microsoft.Office.Tools.Excel 名前空間