ListRanges 열거형
변경된 내용이 있는 ListObject의 범위를 지정합니다.
이 열거형에는 멤버 값을 비트로 조합할 수 있는 FlagsAttribute 특성이 있습니다.
네임스페이스: Microsoft.Office.Tools.Excel
어셈블리: Microsoft.Office.Tools.Excel(Microsoft.Office.Tools.Excel.dll)
구문
‘선언
<FlagsAttribute> _
Public Enumeration ListRanges
[FlagsAttribute]
public enum ListRanges
멤버
멤버 이름 | 설명 | |
---|---|---|
None | DataBodyRange , HeaderRowRange 또는 TotalsRowRange에서 변경이 발생하지 않았습니다. | |
HeaderRowRange | ListObject 의 HeaderRowRange에서 변경이 발생했습니다. | |
DataBodyRange | ListObject 의 DataBodyRange에서 변경이 발생했습니다. | |
TotalsRowRange | ListObject 의 TotalsRowRange에서 변경이 발생했습니다. |
설명
ListRanges 열거형은 ListObjectChangeHandler 대리자의 매개 변수 중 하나에 사용됩니다.
예제
다음 코드 예제에서는 Change 이벤트에 대한 이벤트 처리기 및 ListObject를 만듭니다. 이벤트 처리기는 ListRanges 값을 사용하여 변경된 범위의 위치를 표시합니다. Change 이벤트를 발생시키려면 ListObject의 한 셀에 텍스트를 추가한 다음 Enter 키를 누릅니다.
이 예제는 문서 수준 사용자 지정을 위한 것입니다.
WithEvents ChangeList As Microsoft.Office.Tools.Excel.ListObject
Private Sub ListObject_Change()
ChangeList = Me.Controls.AddListObject( _
Me.Range("A1", "C4"), "ChangeList")
End Sub
Sub List1_Change(ByVal targetRange As _
Microsoft.Office.Interop.Excel.Range, _
ByVal changedRanges As Microsoft.Office.Tools.Excel.ListRanges) _
Handles ChangeList.Change
Dim cellAddress As String = targetRange.Address( _
ReferenceStyle:=Excel.XlReferenceStyle.xlA1)
Select Case changedRanges
Case Microsoft.Office.Tools.Excel.ListRanges.DataBodyRange
MsgBox("The cells at range " & cellAddress & _
" in the data body changed.")
Case Microsoft.Office.Tools.Excel.ListRanges.HeaderRowRange
MsgBox("The cells at range " & cellAddress & _
" in the header row changed.")
Case Microsoft.Office.Tools.Excel.ListRanges.TotalsRowRange
MsgBox("The cells at range " & cellAddress & _
" in the totals row changed.")
Case Else
MsgBox("The cells at range " & cellAddress & _
" changed.")
End Select
End Sub
private void ListObject_Change()
{
Microsoft.Office.Tools.Excel.ListObject list1 =
this.Controls.AddListObject(
this.Range["A1", "C4"], "list1");
list1.Change += new Microsoft.Office.Tools.Excel.
ListObjectChangeHandler(list1_Change);
}
void list1_Change(Microsoft.Office.Interop.Excel.Range
targetRange, Microsoft.Office.Tools.Excel.ListRanges
changedRanges)
{
string cellAddress = targetRange.get_Address(
missing, missing, Excel.XlReferenceStyle.xlA1,
missing, missing);
switch (changedRanges)
{
case Microsoft.Office.Tools.Excel.ListRanges.DataBodyRange:
MessageBox.Show("The cells at range " + cellAddress +
" in the data body changed.");
break;
case Microsoft.Office.Tools.Excel.ListRanges.HeaderRowRange:
MessageBox.Show("The cells at range " + cellAddress +
" in the header row changed.");
break;
case Microsoft.Office.Tools.Excel.ListRanges.TotalsRowRange:
MessageBox.Show("The cells at range " + cellAddress +
" in the totals row changed.");
break;
default:
MessageBox.Show("The cells at range " + cellAddress +
" changed.");
break;
}
}