NamedRange.Change 事件 (2007 系統)
更新: 2008 年 7 月
會在 NamedRange 控制項有所變更時發生。
命名空間: Microsoft.Office.Tools.Excel
組件: Microsoft.Office.Tools.Excel.v9.0 (在 Microsoft.Office.Tools.Excel.v9.0.dll 中)
語法
Public Event Change As DocEvents_ChangeEventHandler
Dim instance As NamedRange
Dim handler As DocEvents_ChangeEventHandler
AddHandler instance.Change, handler
public event DocEvents_ChangeEventHandler Change
備註
如果以執行程式或與使用者互動的方式變更 NamedRange 控制項,便會引發這個事件。當 NamedRange 控制項中的儲存格在重新計算期間發生變更時,不會發生這個事件。
範例
下列程式碼範例會建立 NamedRange 和 Change 事件處理常式。若要引發 Change 事件,請將文字加入至 NamedRange 中的一個儲存格,然後按 ENTER 鍵。
這是示範文件層級自訂的版本。
Private changesRange As Microsoft.Office.Tools.Excel.NamedRange
Private Sub NotifyChanges()
changesRange = Me.Controls.AddNamedRange( _
Me.Range("B2", "E5"), "compositeRange")
AddHandler changesRange.Change, _
AddressOf changesRange_Change
End Sub
Sub changesRange_Change(ByVal Target As Excel.Range)
Dim cellAddress As String = Target.Address(, , _
Microsoft.Office.Interop.Excel.XlReferenceStyle.xlA1, , )
MessageBox.Show("Cell " & cellAddress & " changed.")
End Sub
Microsoft.Office.Tools.Excel.NamedRange changesRange;
private void NotifyChanges()
{
changesRange = this.Controls.AddNamedRange(
this.Range["B2", "E5"], "compositeRange");
changesRange.Change += new Microsoft.Office.Interop.Excel.
DocEvents_ChangeEventHandler(changesRange_Change);
}
void changesRange_Change(Excel.Range Target)
{
string cellAddress = Target.get_Address(missing, missing,
Microsoft.Office.Interop.Excel.XlReferenceStyle.xlA1,
missing, missing);
MessageBox.Show("Cell " + cellAddress + " changed.");
}
這是示範應用程式層級增益集的版本。
Private changesRange As NamedRange
Private Sub NotifyChanges()
Dim vstoWorksheet As Worksheet = CType( _
Me.Application.ActiveWorkbook.Worksheets(1), _
Excel.Worksheet).GetVstoObject()
changesRange = vstoWorksheet.Controls.AddNamedRange( _
vstoWorksheet.Range("B2", "E5"), "compositeRange")
AddHandler changesRange.Change, _
AddressOf changesRange_Change
End Sub
Sub changesRange_Change(ByVal Target As Excel.Range)
Dim cellAddress As String = Target.Address(, , _
Excel.XlReferenceStyle.xlA1, , )
System.Windows.Forms.MessageBox.Show("Cell " & cellAddress & " changed.")
End Sub
NamedRange changesRange;
private void NotifyChanges()
{
Worksheet vstoWorksheet = ((Excel.Worksheet)
this.Application.ActiveWorkbook.Worksheets[1]).GetVstoObject();
changesRange = vstoWorksheet.Controls.AddNamedRange(
vstoWorksheet.Range["B2", "E5"], "compositeRange");
changesRange.Change += new Excel.DocEvents_ChangeEventHandler(
changesRange_Change);
}
void changesRange_Change(Excel.Range Target)
{
string cellAddress = Target.get_Address(missing, missing,
Excel.XlReferenceStyle.xlA1,
missing, missing);
System.Windows.Forms.MessageBox.Show("Cell " + cellAddress +
" changed.");
}
使用權限
- 完全信任立即呼叫者。這個成員無法供部分信任的程式碼使用。如需詳細資訊,請參閱從部分受信任程式碼使用程式庫。
請參閱
參考
Microsoft.Office.Tools.Excel 命名空間
變更記錄
日期 |
記錄 |
原因 |
---|---|---|
2008 年 7 月 |
加入應用程式層級增益集的程式碼範例版本。 |
SP1 功能變更。 |