XmlMappedRange.Find Метод

Определение

Находит конкретные данные в элементе управления XmlMappedRange и возвращает объект 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, который представляет первую ячейку, где найдены указанные данные.

Примеры

В следующем примере кода для значения XmlMappedRange задается строка "Smith", а затем используются Findметоды , FindNextи FindPrevious для поиска первой ячейки со строкой "Smith". Так как всегда XmlMappedRange содержит только одну ячейку, в каждом случае обнаруживается одна и та же ячейка. В этом примере кода предполагается, что текущий лист содержит объект с XmlMappedRange именем CustomerLastNameCell.

private void FindSmith()
{
    this.CustomerLastNameCell.Value2 = "Smith";

    // Use Find to get the range with "Smith".
    Excel.Range range1 = this.CustomerLastNameCell.Find("Smith",
        Excel.XlSearchDirection.xlNext);
    string address1 = range1.get_Address(missing, missing,
        Excel.XlReferenceStyle.xlA1);
    MessageBox.Show("Find method found the range: " + address1);

    // Use FindNext to get the range with "Smith".
    Excel.Range range2 = this.CustomerLastNameCell.FindNext(range1);
    string address2 = range2.get_Address(
        Excel.XlReferenceStyle.xlA1);
    MessageBox.Show("FindNext method found the range: " + address2);

    // Use FindPrevious to get the range with "Smith".
    Excel.Range range3 = this.CustomerLastNameCell.FindPrevious(range2);
    string address3 = range3.get_Address(
        Excel.XlReferenceStyle.xlA1);
    MessageBox.Show("FindPrevious method found the range: " + address3);
}
Private Sub FindSmith()
    Me.CustomerLastNameCell.Value2 = "Smith"

    ' Use Find to get the range with "Smith".
    Dim range1 As Excel.Range = Me.CustomerLastNameCell.Find( _
        "Smith", SearchDirection:=Excel.XlSearchDirection.xlNext)
    Dim address1 As String = range1.Address(ReferenceStyle:=Excel.XlReferenceStyle.xlA1)
    MsgBox("Find method found the range: " & address1)

    ' Use FindNext to get the range with "Smith".
    Dim range2 As Excel.Range = Me.CustomerLastNameCell.FindNext(range1)
    Dim address2 As String = range2.Address(ReferenceStyle:=Excel.XlReferenceStyle.xlA1)
    MsgBox("FindNext method found the range: " & address2)

    ' Use FindPrevious to get the range with "Smith".
    Dim range3 As Excel.Range = Me.CustomerLastNameCell.FindPrevious(range2)
    Dim address3 As String = range3.Address(ReferenceStyle:=Excel.XlReferenceStyle.xlA1)
    MsgBox("FindPrevious method found the range: " & address3)
End Sub

Комментарии

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

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

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

Для повторения Microsoft.Office.Interop.Excel.Range.FindNext* поиска можно использовать методы и FindPrevious .

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