NamedRange.Change Olay
Bir şey olarak değiştiğinde gerçekleşir NamedRange Denetim.
Ad alanı: Microsoft.Office.Tools.Excel
Derleme: Microsoft.Office.Tools.Excel (Microsoft.Office.Tools.Excel.dll içinde)
Sözdizimi
'Bildirim
Event Change As DocEvents_ChangeEventHandler
event DocEvents_ChangeEventHandler Change
Açıklamalar
Bu olay, ortaya NamedRange Denetim değiştiren bir program değişikliği veya kullanıcı etkileşimi. Bu olayı oluşmaz, içindeki hücrelerin bir NamedRange denetimi değiştirme sırasında yeniden hesaplama.
Örnekler
Aşağıdaki kod örneği oluşturur bir NamedRange ve bir Change olay işleyicisi. Yükseltmek için Change olay, hücrelerde birine metin ekleme NamedRange ve ENTER tuşuna BASIN.
Belge düzeyinde özelleştirme için değil.
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.");
}
Bu bir uygulama düzeyinde eklentisi sürümüdür.
Private changesRange As NamedRange
Private Sub NotifyChanges()
Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet =
Globals.ThisAddIn.Application.ActiveSheet
Dim vstoWorksheet As Microsoft.Office.Tools.Excel.Worksheet =
Globals.Factory.GetVstoObject(NativeWorksheet)
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 =
Globals.Factory.GetVstoObject(this.Application.ActiveWorkbook.Worksheets[1]);
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.");
}
.NET Framework Güvenliği
- Anında arayanlar için tam güven. Bu üye kısmen güvenilen kodla kullanılamaz. Daha fazla bilgi için bkz. kısmen güvenilir kod tarafından Kitaplıklar kullanma.