次の方法で共有


ListObject.SelectedIndexChanged イベント

SelectedIndex プロパティの値が変化したときに発生します。

名前空間:  Microsoft.Office.Tools.Excel
アセンブリ:  Microsoft.Office.Tools.Excel (Microsoft.Office.Tools.Excel.dll 内)

構文

'宣言
Event SelectedIndexChanged As EventHandler
event EventHandler SelectedIndexChanged

解説

ヘッダー、挿入行、または合計行が選択された場合は、このイベントは発生しません。

このイベントは、プログラムによる変更、またはユーザーとのやり取りのいずれかによって SelectedIndex プロパティが変更された場合に発生します。

次のコード例は、現在のワークシート上に ListObject を作成します。SelectedIndex プロパティおよび AutoSelectRows プロパティを使用して、2 番目の行を選択し、ユーザーが行をクリックしたときにその行全体が選択されるように指定します。また、SelectedIndexChanged イベントのイベント ハンドラーも作成し、新しい行が選択されるたびにメッセージ ボックスを表示します。

このバージョンは、ドキュメント レベルのカスタマイズに使用されます。

    WithEvents SelectedIndexList As Microsoft.Office.Tools.Excel.ListObject
    Private Sub ListObject_SelectedIndex()
        SelectedIndexList = _
            Me.Controls.AddListObject(Me.Range("A1", "D4"), _
            "SelectedIndexList")
    SelectedIndexList.AutoSelectRows = True
        SelectedIndexList.SelectedIndex = 2
    End Sub


    Private Sub List1_SelectedIndexChanged(ByVal sender As Object, _
        ByVal e As EventArgs) Handles SelectedIndexList.SelectedIndexChanged
        MessageBox.Show("Selected index has changed.")
    End Sub

private void ListObject_SelectedIndex()
{
    Microsoft.Office.Tools.Excel.ListObject list1 =
        this.Controls.AddListObject(this.Range["A1", "D4"],
        "list1");

    list1.AutoSelectRows = true;
    list1.SelectedIndex = 2;
    list1.SelectedIndexChanged +=
        new EventHandler(list1_SelectedIndexChanged);
}

void list1_SelectedIndexChanged(object sender, EventArgs e)
{
    MessageBox.Show("Selected index has changed.");
}

このバージョンは、アプリケーション レベルのアドインに使用されます。

    WithEvents SelectedIndexList As ListObject
    Private Sub ListObject_SelectedIndex()

        Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet =
            Me.Application.Worksheets(1)
        Dim vstoWorksheet As Microsoft.Office.Tools.Excel.Worksheet =
                Globals.Factory.GetVstoObject(NativeWorksheet)
        SelectedIndexList = _
            vstoWorksheet.Controls.AddListObject( _
            vstoWorksheet.Range("A1", "D4"), _
            "SelectedIndexList")
        SelectedIndexList.AutoSelectRows = True
        SelectedIndexList.SelectedIndex = 2
    End Sub


    Private Sub List1_SelectedIndexChanged(ByVal sender As Object, _
        ByVal e As EventArgs) Handles SelectedIndexList.SelectedIndexChanged
        System.Windows.Forms.MessageBox.Show("Selected index has changed.")
    End Sub

private void ListObject_SelectedIndex()
{
    Worksheet vstoWorksheet = 
        Globals.Factory.GetVstoObject(this.Application.ActiveWorkbook.Worksheets[1]);
    ListObject list1 =
        vstoWorksheet.Controls.AddListObject(
        vstoWorksheet.Range["A1", "D4"],
        "list1");

    list1.AutoSelectRows = true;
    list1.SelectedIndex = 2;
    list1.SelectedIndexChanged +=
        new EventHandler(list1_SelectedIndexChanged);
}

void list1_SelectedIndexChanged(object sender, EventArgs e)
{
    System.Windows.Forms.MessageBox.Show("Selected index has changed.");
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

ListObject インターフェイス

Microsoft.Office.Tools.Excel 名前空間