ListRanges Enumeration

 

Specifies the range of a ListObject that has changes.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:   Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

[FlagsAttribute]
public enum ListRanges

Member nameDescription
DataBodyRange

The change occurred in the DataBodyRange of the ListObject.

HeaderRowRange

The change occurred in the HeaderRowRange of the ListObject.

None

The change did not occur in the DataBodyRange, HeaderRowRange, or TotalsRowRange.

TotalsRowRange

The change occurred in the TotalsRowRange of the ListObject.

The ListRanges enumeration is used by one of the parameters of the ListObjectChangeHandler delegate.

The following code example creates a ListObject and an event handler for the Change event. The event handler uses the ListRanges values to display the location of a changed range. To raise the Change event, add text to one of the cells in the ListObject and then press ENTER.

This example is for a document-level customization.

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(
        Excel.XlReferenceStyle.xlA1 
        );

    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;
    }
}
Return to top
Show: