Freigeben über


ListRanges-Enumeration

Gibt den Bereich eines ListObject an, der Änderungen aufweist.

Diese Enumeration verfügt über ein FlagsAttribute-Attribut, das die bitweise Kombination der Memberwerte zulässt.

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

Syntax

'Declaration
<FlagsAttribute> _
Public Enumeration ListRanges
[FlagsAttribute]
public enum ListRanges

Member

Membername Beschreibung
None Die Änderung ist nicht im DataBodyRange, HeaderRowRange oder TotalsRowRange aufgetreten.
HeaderRowRange Die Änderung ist im HeaderRowRange des ListObject aufgetreten.
DataBodyRange Die Änderung ist im DataBodyRange des ListObject aufgetreten.
TotalsRowRange Die Änderung ist im TotalsRowRange des ListObject aufgetreten.

Hinweise

Die ListRanges-Enumeration wird von einem der Parameter des ListObjectChangeHandler-Delegaten verwendet.

Beispiele

Im folgenden Codebeispiel werden ein ListObject und ein Ereignishandler für das Change-Ereignis erstellt. Der Ereignishandler verwendet die ListRanges-Werte, um den Speicherort des geänderten Bereichs anzuzeigen. Zum Auslösen des Change-Ereignisses müssen Sie einer Zelle im ListObject Text hinzufügen und die EINGABETASTE drücken.

Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.

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;
    }
}

Siehe auch

Referenz

Microsoft.Office.Tools.Excel-Namespace