NamedRange.Change イベント (2007 System)
更新 : 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 内のセルの 1 つにテキストを追加し、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 機能変更 |