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


XmlMappedRange.Find Метод (2007 System)

Обновлен: Ноябрь 2007

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

Пространство имен:  Microsoft.Office.Tools.Excel
Сборка:  Microsoft.Office.Tools.Excel.v9.0 (в Microsoft.Office.Tools.Excel.v9.0.dll)

Синтаксис

'Декларация
Public 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
'Применение
Dim instance As XmlMappedRange
Dim What As Object
Dim After As Object
Dim LookIn As Object
Dim LookAt As Object
Dim SearchOrder As Object
Dim SearchDirection As XlSearchDirection
Dim MatchCase As Object
Dim MatchByte As Object
Dim SearchFormat As Object
Dim returnValue As Range

returnValue = instance.Find(What, After, _
    LookIn, LookAt, SearchOrder, SearchDirection, _
    MatchCase, MatchByte, SearchFormat)
public 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
Объект Range, который представляет первую ячейку, где найдены указанные данные.

Заметки

Если соответствия не найдено, метод возвращает значение nullссылка null (Nothing в Visual Basic).

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

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

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

Примеры

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

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
private void FindSmith()
{
    this.CustomerLastNameCell.Value2 = "Smith";

    // Use Find to get the range with "Smith".
    Excel.Range range1 = this.CustomerLastNameCell.Find("Smith",
        missing, missing, missing, missing, Excel.XlSearchDirection.xlNext,
        missing, missing, missing);
    string address1 = range1.get_Address(missing, missing,
        Excel.XlReferenceStyle.xlA1, missing, missing);
    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(missing, missing, 
        Excel.XlReferenceStyle.xlA1, missing, missing);
    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(missing, missing,
        Excel.XlReferenceStyle.xlA1, missing, missing);
    MessageBox.Show("FindPrevious method found the range: " + address3);
}

Разрешения

См. также

Ссылки

XmlMappedRange Класс

XmlMappedRange - члены

Microsoft.Office.Tools.Excel - пространство имен