WorkbookBase.Saved 屬性
取得或設定值,指出活頁簿自上次儲存後是否有所變更。
命名空間: Microsoft.Office.Tools.Excel
組件: Microsoft.Office.Tools.Excel.v4.0.Utilities (在 Microsoft.Office.Tools.Excel.v4.0.Utilities.dll 中)
語法
'宣告
Public Property Saved As Boolean
Get
Set
public bool Saved { get; set; }
屬性值
型別:System.Boolean
如果活頁簿自上次儲存後未發生變更則為 true,否則為 false。
備註
如果活頁簿從未儲存過,其 Path 屬性會傳回空字串 ("")。
如果您要關閉已修改過的活頁簿,但不想儲存或收到儲存提示,可以將此屬性設為 true。
範例
下列程式碼範例示範 BeforeClose 事件的處理常式,如果活頁簿自上次儲存後已變更,則會提示使用者儲存變更、不儲存變更或取消關閉操作。 如果使用者不儲存變更,則活頁簿的 Saved 屬性會設為 true,因此在執行關閉動作時,Microsoft Office Excel 不會提示使用者儲存活頁簿。 如果使用者取消關閉動作,則 WorkbookEvents_BeforeCloseEventHandler 事件處理常式的 Cancel 參數設為 true,因此 Microsoft Office Excel 不會關閉活頁簿。
這是示範文件層級自訂的範例。
Sub ThisWorkbook_BeforeClose(ByRef Cancel As Boolean) _
Handles Me.BeforeClose
If Not Me.Saved Then
Dim result As DialogResult = _
MessageBox.Show("Do you want to save the " & _
"changes you made to " & Me.Name & "?", _
"Example", MessageBoxButtons.YesNoCancel)
Select Case result
Case DialogResult.Yes
Me.Save()
Case DialogResult.Cancel
Cancel = True
' The following code ensures that the default Save File
' dialog is not displayed.
Case DialogResult.No
Me.Saved = True
End Select
End If
End Sub
private void WorkbookBeforeClose()
{
this.BeforeClose +=
new Excel.WorkbookEvents_BeforeCloseEventHandler(
ThisWorkbook_BeforeClose);
}
void ThisWorkbook_BeforeClose(ref bool Cancel)
{
if (!this.Saved)
{
DialogResult result = MessageBox.Show("Do you want to save the " +
"changes you made to " + this.Name + "?", "Example",
MessageBoxButtons.YesNoCancel);
switch (result)
{
case DialogResult.Yes:
this.Save();
break;
case DialogResult.Cancel:
Cancel = true;
break;
// The following code ensures that the default Save File
// dialog is not displayed.
case DialogResult.No:
this.Saved = true;
break;
}
}
}
.NET Framework 安全性
- 完全信任立即呼叫者。這個成員無法供部分信任的程式碼使用。如需詳細資訊,請參閱從部分受信任程式碼使用程式庫。