Share via


NamedRange.Find 메서드

NamedRange 컨트롤에서 특정 정보를 찾은 다음 해당 정보가 있는 첫 번째 셀을 나타내는 Microsoft.Office.Interop.Excel.Range 개체를 반환합니다.

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

구문

‘선언
Function Find ( _
    What As Object, _
    After As Object, _
    LookIn As Object, _
    LookAt As Object, _
    SearchOrder As Object, _
    SearchDirection As XlSearchDirection, _
    MatchCase As Object, _
    MatchByte As Object, _
    SearchFormat As Object _
) As Range
Range Find(
    Object What,
    Object After,
    Object LookIn,
    Object LookAt,
    Object SearchOrder,
    XlSearchDirection SearchDirection,
    Object MatchCase,
    Object MatchByte,
    Object SearchFormat
)

매개 변수

  • What
    형식: System.Object
    검색할 데이터입니다.문자열 또는 Microsoft Office Excel 데이터 형식일 수 있습니다.
  • After
    형식: System.Object
    검색을 시작할 셀의 바로 앞 셀입니다.사용자 인터페이스에서 검색할 경우 이것은 활성 셀의 위치에 해당됩니다.After는 범위 내의 단일 셀이어야 합니다.이 셀의 다음 셀부터 검색이 시작되며, 지정된 셀은 메서드가 이 셀까지 다시 돌아올 때까지 검색되지 않습니다.이 인수를 지정하지 않으면 범위의 왼쪽 위 모퉁이에 있는 셀의 다음 셀부터 검색이 시작됩니다.
  • MatchCase
    형식: System.Object
    검색에서 대/소문자를 구분하는 경우 true입니다.기본값은 false입니다.
  • MatchByte
    형식: System.Object
    더블바이트 언어 지원을 선택 또는 설치한 경우에만 사용됩니다.더블바이트 문자를 더블바이트 문자하고만 비교하려면 true이고, 더블바이트 문자를 해당하는 싱글바이트 문자와 비교하려면 false입니다.

반환 값

형식: Microsoft.Office.Interop.Excel.Range
정보가 검색된 첫 번째 셀을 나타내는 Microsoft.Office.Interop.Excel.Range 개체입니다.

설명

일치하는 항목이 없는 경우 이 메서드는 nullNull 참조(Visual Basic의 경우 Nothing)을 반환합니다.

이 메서드는 선택 영역이나 활성 셀에 영향을 주지 않습니다.

LookIn, LookAt, SearchOrder 및 MatchByte에 대한 설정은 이 메서드를 사용할 때마다 저장됩니다. 다음에 메서드를 호출할 때 이러한 인수의 값을 지정하지 않으면 저장된 값이 사용됩니다. 이러한 인수를 설정하면 찾기 대화 상자의 설정이 변경되며, 찾기 대화 상자의 설정을 변경하면 인수를 생략했을 때 사용되는 저장된 값이 변경됩니다. 이러한 문제를 없애려면 메서드를 사용할 때마다 이러한 인수를 명시적으로 설정해야 합니다.

FindNextFindPrevious 메서드를 사용하여 검색을 반복할 수 있습니다.

검색이 지정된 검색 범위의 끝에 도달하면 범위의 처음으로 돌아가서 검색이 실행됩니다. 이 순환이 발생할 때 검색을 중지하려면 처음 검색된 셀의 주소를 저장한 다음 이후에 셀이 검색될 때마다 해당 셀의 주소를 저장된 이 주소와 비교해 테스트합니다.

선택적 매개 변수

선택적 매개 변수에 대한 자세한 내용은 Office 솔루션의 선택적 매개 변수를 참조하십시오.

예제

다음 코드 예제에서는 Find 메서드를 사용하여 NamedRange 컨트롤에서 값이 Seashell인 첫 번째 셀을 찾습니다. 그런 다음 FindNextFindPrevious 메서드를 사용하여 값이 Seashell인 다음 셀을 찾고 원래 셀로 돌아갑니다. 끝으로, Cut 메서드를 사용하여 값이 Seashell인 첫 번째 셀의 내용을 잘라내어 셀 B1에 붙여넣습니다.

이 예제는 문서 수준 사용자 지정을 위한 것입니다.

    Private Sub FindValue()
        Me.Range("A1").Value2 = "Barnacle"
        Me.Range("A2").Value2 = "Seashell"
        Me.Range("A3").Value2 = "Star Fish"
        Me.Range("A4").Value2 = "Seashell"
        Me.Range("A5").Value2 = "Clam Shell"

        Dim namedRange1 As Microsoft.Office.Tools.Excel.NamedRange _
            = Me.Controls.AddNamedRange(Me.Range("A1", "A5"), _
            "namedRange1")

        ' Find the first occurrence of "Seashell".
        Dim Range1 As Excel.Range = namedRange1.Find("Seashell", , , _
            Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByColumns, _
            Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, _
            False, False, )

        ' Find the next occurrence of "Seashell".
        Range1 = namedRange1.FindNext(Range1)

        ' Return to the first occurrence of "Seashell".
        Range1 = namedRange1.FindPrevious(Range1)

        ' Cut the range with the first "Seashell" and copy it to cell B1.
        Dim namedRange2 As Microsoft.Office.Tools.Excel.NamedRange _
            = Me.Controls.AddNamedRange(Range1, "namedRange2")
        namedRange2.Cut(Me.Range("B1"))
    End Sub

private void FindValue()
{
    this.Range["A1", missing].Value2 = "Barnacle";
    this.Range["A2", missing].Value2 = "Seashell";
    this.Range["A3", missing].Value2 = "Star Fish";
    this.Range["A4", missing].Value2 = "Seashell";
    this.Range["A5", missing].Value2 = "Clam Shell";

    Microsoft.Office.Tools.Excel.NamedRange namedRange1 =
        this.Controls.AddNamedRange(this.Range["A1", "A5"],
        "namedRange1");

    // Find the first occurrence of "Seashell".
    Excel.Range Range1 = namedRange1.Find("Seashell", missing, missing,
        Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByColumns,
        Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext,
        false, false, missing);

    // Find the next occurrence of "Seashell".
    Range1 = namedRange1.FindNext(Range1);

    // Return to the first occurrence of "Seashell".
    Range1 = namedRange1.FindPrevious(Range1);

    // Cut the range with the first "Seashell" and copy it to cell B1.
    Microsoft.Office.Tools.Excel.NamedRange namedRange2 =
        this.Controls.AddNamedRange(Range1, "namedRange2");
    namedRange2.Cut(this.Range["B1", missing]);
}

.NET Framework 보안

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

참고 항목

참조

NamedRange 인터페이스

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