다음을 통해 공유


NamedRange.SelectionChange 이벤트

NamedRange 컨트롤 내부의 선택 영역이 변경될 때 발생합니다.

네임스페이스:  Microsoft.Office.Tools.Excel
어셈블리:  Microsoft.Office.Tools.Excel(Microsoft.Office.Tools.Excel.dll)

구문

‘선언
Event SelectionChange As DocEvents_SelectionChangeEventHandler
event DocEvents_SelectionChangeEventHandler SelectionChange

설명

선택 영역이 NamedRange 컨트롤로 변경되거나 해당 컨트롤 내에서 변경될 때 이 이벤트가 발생합니다.

예제

다음 코드 예제에서는 NamedRange의 선택된 셀 주소를 표시하는 SelectionChange 이벤트에 대한 처리기를 보여 줍니다.

이 버전은 문서 수준 사용자 지정을 위한 것입니다.

    Private selectionChangeRange As Microsoft.Office.Tools.Excel.NamedRange

    Private Sub DisplaySelectionChange()
        selectionChangeRange = Me.Controls.AddNamedRange( _
            Me.Range("A1", "E5"), "selectionChangeRange")
        AddHandler Me.selectionChangeRange.SelectionChange, _
            AddressOf selectionChangeRange_SelectionChange
    End Sub


    Sub selectionChangeRange_SelectionChange(ByVal Target As _
        Microsoft.Office.Interop.Excel.Range)
        Dim selectedRange As String = Target.Address(, , _
            Excel.XlReferenceStyle.xlA1, , )

        MessageBox.Show(Me.Name & ": " & selectedRange & _
            " raised the SelectionChange event.")
    End Sub

Microsoft.Office.Tools.Excel.NamedRange selectionChangeRange;
private void DisplaySelectionChange()
{
    selectionChangeRange = this.Controls.AddNamedRange(
        this.Range["A1", "E5"], "selectionChangeRange");
    this.selectionChangeRange.SelectionChange += new 
        Microsoft.Office.Interop.Excel.
        DocEvents_SelectionChangeEventHandler(
        selectionChangeRange_SelectionChange);
}

void selectionChangeRange_SelectionChange(
    Microsoft.Office.Interop.Excel.Range Target)
{
    string selectedRange = Target.get_Address(missing, missing,
        Excel.XlReferenceStyle.xlA1, missing, missing);

    MessageBox.Show(this.Name + ": " + selectedRange + 
        " raised the SelectionChange event.");
}

이 버전은 응용 프로그램 수준 추가 기능을 위한 것입니다.

Private selectionChangeRange As NamedRange

Private Sub DisplaySelectionChange()

    Dim NativeWorksheet As Microsoft.Office.Interop.Excel.Worksheet =
        Globals.ThisAddIn.Application.ActiveSheet

    Dim vstoWorksheet As Microsoft.Office.Tools.Excel.Worksheet =
            Globals.Factory.GetVstoObject(NativeWorksheet)

    selectionChangeRange = vstoWorksheet.Controls.AddNamedRange( _
        vstoWorksheet.Range("A1", "E5"), "selectionChangeRange")
    AddHandler Me.selectionChangeRange.SelectionChange, _
        AddressOf selectionChangeRange_SelectionChange
End Sub


Sub selectionChangeRange_SelectionChange(ByVal Target As  _
    Microsoft.Office.Interop.Excel.Range)
    Dim selectedRange As String = Target.Address(, , _
        Excel.XlReferenceStyle.xlA1, , )

    System.Windows.Forms.MessageBox.Show( _
        Me.Application.ActiveWorkbook.Worksheets(1).Name & _
        ": " & selectedRange & " raised the SelectionChange event.")
End Sub
NamedRange selectionChangeRange;
private void DisplaySelectionChange()
{
    Worksheet vstoWorksheet =
        Globals.Factory.GetVstoObject(this.Application.ActiveWorkbook.Worksheets[1]);
    selectionChangeRange = vstoWorksheet.Controls.AddNamedRange(
        vstoWorksheet.Range["A1", "E5"], "selectionChangeRange");
    this.selectionChangeRange.SelectionChange += new
        Excel.DocEvents_SelectionChangeEventHandler(
        selectionChangeRange_SelectionChange);
}

void selectionChangeRange_SelectionChange(
    Microsoft.Office.Interop.Excel.Range Target)
{
    string selectedRange = Target.get_Address(missing, missing,
        Excel.XlReferenceStyle.xlA1, missing, missing);

    Excel.Worksheet nativeWorksheet = (Excel.Worksheet)
        this.Application.ActiveWorkbook.Worksheets[1];
    System.Windows.Forms.MessageBox.Show(
        nativeWorksheet.Name + ": " + selectedRange +
        " raised the SelectionChange event.");
}

.NET Framework 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

NamedRange 인터페이스

Microsoft.Office.Tools.Excel 네임스페이스