Поделиться через


NamedRange.Find Метод

Определение

Находит определенные данные в элементе управления NamedRange и возвращает объект Range, который представляет первую ячейку, где найдены эти данные.

public Microsoft.Office.Interop.Excel.Range Find (object What, object After, object LookIn, object LookAt, object SearchOrder, Microsoft.Office.Interop.Excel.XlSearchDirection SearchDirection = Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, object MatchCase, object MatchByte, object SearchFormat);
abstract member Find : obj * obj * obj * obj * obj * Microsoft.Office.Interop.Excel.XlSearchDirection * obj * obj * obj -> Microsoft.Office.Interop.Excel.Range
Public Function Find (What As Object, Optional After As Object, Optional LookIn As Object, Optional LookAt As Object, Optional SearchOrder As Object, Optional SearchDirection As XlSearchDirection = Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext, Optional MatchCase As Object, Optional MatchByte As Object, Optional SearchFormat As Object) As Range

Параметры

What
Object

Искомые данные. Может быть строкой или типом данных Microsoft Office Excel.

After
Object

Ячейка, после которой следует начать поиск. Это соответствует положению активной ячейки при выполнении поиска из пользовательского интерфейса. Обратите внимание, что After должна быть одной ячейкой в диапазоне. Помните, что поиск начинается после этой ячейки; поиск указанной ячейки не осуществляется до тех пор, пока метод не вернется к этой ячейке. Если этот аргумент не указывается, поиск начинается после ячейки в верхнем левом углу диапазона.

LookIn
Object

Тип данных.

LookAt
Object

Может быть одно из следующих значений XlLookAt: xlWhole или xlPart.

SearchOrder
Object

Может быть одно из следующих значений XlSearchOrder: xlByRows или xlByColumns.

SearchDirection
XlSearchDirection

Направление поиска. Может иметь одно из следующих XlSearchDirection значений: xlNext или xlPrevious.

MatchCase
Object

Значение true, чтобы при поиске учитывался регистр. Значение по умолчанию — false.

MatchByte
Object

Используется только в случае выбора или установки поддержки двухбайтовых языков. Значение true, чтобы двухбайтовые символы соответствовали только двухбайтовым символам; значение false, чтобы двухбайтовые символы соответствовали своим однобайтовым эквивалентам.

SearchFormat
Object

Формат поиска.

Возвращаемое значение

Объект Range, который представляет первую ячейку, где найдены необходимые данные.

Примеры

В следующем примере кода метод используется для Find поиска первой ячейки со значением Seashell в элементе NamedRange управления . Затем в примере используются FindNext методы и FindPrevious , чтобы найти следующую ячейку со значением Seashell , а затем вернуться к исходной ячейке. Наконец, в примере используется Cut метод , чтобы вырезать содержимое первой ячейки со значением Seashell и вставить его в ячейку B1.

Этот пример предназначен для настройки на уровне документа.

private void FindValue()
{
    this.Range["A1"].Value2 = "Barnacle";
    this.Range["A2"].Value2 = "Seashell";
    this.Range["A3"].Value2 = "Star Fish";
    this.Range["A4"].Value2 = "Seashell";
    this.Range["A5"].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",
        Excel.XlLookAt.xlWhole, Excel.XlSearchOrder.xlByColumns,
        Microsoft.Office.Interop.Excel.XlSearchDirection.xlNext,
        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.
    Microsoft.Office.Tools.Excel.NamedRange namedRange2 =
        this.Controls.AddNamedRange(Range1, "namedRange2");
    namedRange2.Cut(this.Range["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

Комментарии

Этот метод возвращает значение null , если совпадение не найдено.

Этот метод не влияет на выделение или активную ячейку.

Параметры для LookIn, LookAt, SearchOrderи MatchByte сохраняются при каждом использовании этого метода. Если вы не укажете значения для этих аргументов при следующем вызове метода, будут использоваться сохраненные значения. Установка этих аргументов изменяет параметры в диалоговом окне Найти, а изменение параметров в диалоговом окне Найти изменяет сохраненные значения, которые используются при пропуске аргументов. Чтобы избежать проблем, задайте эти аргументы явным образом при каждом использовании этого метода.

Для повторения FindNext поиска можно использовать методы и FindPrevious .

Когда поиск достигает конца указанного диапазона поиска, он переносится в начало диапазона. Чтобы остановить поиск при возникновении этого обходного пути, сохраните адрес первой найденной ячейки, а затем проверьте каждый последующий адрес найденной ячейки с этим сохраненным адресом.

Необязательные параметры

Сведения о необязательных параметрах см. в разделе Необязательные параметры в решениях Office.

Применяется к