Método WorksheetBase.Protect
Protege uma planilha para que ele não pode ser modificado.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel.v4.0.Utilities (em Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Sintaxe
'Declaração
Public Sub Protect ( _
password As Object, _
drawingObjects As Object, _
contents As Object, _
scenarios As Object, _
userInterfaceOnly As Object, _
allowFormattingCells As Object, _
allowFormattingColumns As Object, _
allowFormattingRows As Object, _
allowInsertingColumns As Object, _
allowInsertingRows As Object, _
allowInsertingHyperlinks As Object, _
allowDeletingColumns As Object, _
allowDeletingRows As Object, _
allowSorting As Object, _
allowFiltering As Object, _
allowUsingPivotTables As Object _
)
public void Protect(
Object password,
Object drawingObjects,
Object contents,
Object scenarios,
Object userInterfaceOnly,
Object allowFormattingCells,
Object allowFormattingColumns,
Object allowFormattingRows,
Object allowInsertingColumns,
Object allowInsertingRows,
Object allowInsertingHyperlinks,
Object allowDeletingColumns,
Object allowDeletingRows,
Object allowSorting,
Object allowFiltering,
Object allowUsingPivotTables
)
Parâmetros
- password
Tipo: System.Object
Uma senha diferencia maiúsculas de minúsculas, para a planilha.Se esse argumento for omitido, você poderá desproteger a planilha sem usar uma senha.Caso contrário, você deve especificar a senha para desproteger a planilha.Se você esquecer a senha, você não poderá desproteger a planilha.É uma boa idéia manter uma lista de suas senhas e seus respectivos documentos em um lugar seguro.
- drawingObjects
Tipo: System.Object
true para proteger formas.O valor padrão é false.
- contents
Tipo: System.Object
true para proteger o conteúdo de células bloqueadas.O valor padrão é true.
- scenarios
Tipo: System.Object
true para proteger cenários.O valor padrão é true.
- userInterfaceOnly
Tipo: System.Object
true para proteger a interface do usuário, mas não as macros.Se esse argumento for omitido, a proteção se aplica tanto a macros quanto à interface do usuário.
- allowFormattingCells
Tipo: System.Object
true permite ao usuário formatar qualquer célula em uma planilha protegida.O valor padrão é false.
- allowFormattingColumns
Tipo: System.Object
true permite ao usuário formatar qualquer coluna em uma planilha protegida.O valor padrão é false.
- allowFormattingRows
Tipo: System.Object
true permite ao usuário formatar qualquer linha em uma planilha protegida.O valor padrão é false.
- allowInsertingColumns
Tipo: System.Object
true permite ao usuário inserir colunas na planilha protegida.O valor padrão é false.
- allowInsertingRows
Tipo: System.Object
true permite ao usuário inserir linhas na planilha protegida.O valor padrão é false.
- allowInsertingHyperlinks
Tipo: System.Object
true permite que o usuário inserir hiperlinks na planilha.O valor padrão é false.
- allowDeletingColumns
Tipo: System.Object
true permite que o usuário excluir colunas na planilha protegida, onde cada célula na coluna a ser excluída é desbloqueada.O valor padrão é false.
- allowDeletingRows
Tipo: System.Object
true permite que o usuário excluir linhas em uma planilha protegida, onde cada célula na linha a ser excluída é desbloqueada.O valor padrão é false.
- allowSorting
Tipo: System.Object
true permite ao usuário classificar na planilha protegida.Cada célula no intervalo de classificação deve ser desbloqueada ou desprotegida.O valor padrão é false.
- allowFiltering
Tipo: System.Object
true permite ao usuário definir filtros na planilha protegida.Os usuários podem alterar os critérios de filtro, mas não pode habilitar ou desabilitar um AutoFiltro.Os usuários podem definir filtros em um AutoFiltro existente.O valor padrão é false.
- allowUsingPivotTables
Tipo: System.Object
true permite ao usuário usar relatórios de tabela dinâmica na planilha protegida.O valor padrão é false.
Comentários
Se você aplicar esse método com o UserInterfaceOnly argumento definido como true e, em seguida, salve a pasta de trabalho, a planilha inteira (não apenas a interface) será totalmente protegida quando você reabrir a pasta de trabalho. Para reabilitar a proteção da interface de usuário depois que a pasta de trabalho é aberta, você deve aplicar novamente esse método com UserInterfaceOnly definido como true.
É possível fazer alterações em uma planilha protegida se a senha for fornecida. Além disso, outro método seria desproteger a planilha, faça as alterações necessárias e proteger a planilha novamente.
Observação |
---|
'Desproteger' significa que a célula pode estar bloqueada (Formatar células caixa de diálogo) mas está incluído em um intervalo definido no Permitem que os usuários editem intervalos caixa de diálogo e o usuário tem desprotegeu o intervalo com uma senha ou validou por meio de permissões NT. |
Optional Parameters
Para obter informações sobre os parâmetros opcionais, consulte Parâmetros opcionais em soluções do Office.
Exemplos
O exemplo de código a seguir obtém o valor da ProtectContents propriedade para determinar se o conteúdo da planilha está protegido. Se o conteúdo está desprotegido, em seguida, a Protect método é chamado com o Contents parâmetro definido como true para que o conteúdo esteja protegido.
Este exemplo é para uma personalização em nível de documento.
Private Sub ProtectCellContents()
If Not Me.ProtectContents Then
If DialogResult.Yes = MessageBox.Show("Cell contents in this " & _
"worksheet are not protected. Protect cell contents?", "Example", _
MessageBoxButtons.YesNo) Then
' Protect cell contents, but do not change any
' other protection type.
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)
End If
End If
End Sub
private void ProtectCellContents()
{
if (!this.ProtectContents)
{
if (DialogResult.Yes == MessageBox.Show("Cell contents in this " +
"worksheet are not protected. Protect cell contents?", "Example",
MessageBoxButtons.YesNo))
{
// Protect cell contents, but do not change any
// other protection type.
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);
}
}
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.