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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。