Compartir a través de


XmlMappedRange.Find (Método)

Busca información específica en un control XmlMappedRange y devuelve un objeto Range que representa la primera celda en la que se encuentra esa información.

Espacio de nombres:  Microsoft.Office.Tools.Excel
Ensamblado:  Microsoft.Office.Tools.Excel (en Microsoft.Office.Tools.Excel.dll)

Sintaxis

'Declaración
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
)

Parámetros

  • What
    Tipo: System.Object
    Datos que se van a buscar.Puede ser una cadena o cualquier tipo de datos de Microsoft Office Excel.
  • After
    Tipo: System.Object
    Celda situada a continuación de la que se desea que comience la búsqueda.Corresponde a la posición de la celda activa cuando se realiza una búsqueda desde la interfaz de usuario.Observe que After debe ser una sola celda del rango.Recuerde que la búsqueda comienza a continuación de esta celda; no se busca en la celda especificada hasta que el método vuelve a buscar delante de ella.Si no especifica este argumento, la búsqueda se inicia a continuación de la celda situada en la esquina superior izquierda del rango.
  • MatchCase
    Tipo: System.Object
    true para que en la búsqueda se distinga entre mayúsculas y minúsculas.El valor predeterminado es false.
  • MatchByte
    Tipo: System.Object
    Solamente se utiliza si ha seleccionado o instalado la compatibilidad con idiomas de doble byte.true si las coincidencias con caracteres de doble byte sólo deben ser con caracteres de doble byte; false si las coincidencias con caracteres de doble byte van a ser con equivalentes de un solo byte.

Valor devuelto

Tipo: Microsoft.Office.Interop.Excel.Range
Objeto Range que representa la primera celda en que se encuentra la información especificada.

Comentarios

Este método devuelve nullreferencia null (Nothing en Visual Basic) si no se encuentra ninguna coincidencia.

Este método no afecta a la selección ni a la celda activa.

La configuración para LookIn, LookAt, SearchOrder y MatchByte se guarda cada vez que se utiliza este método. Si no especifica valores para estos argumentos, la próxima vez que realice una llamada al método se utilizarán los valores guardados. Al establecer estos argumentos, se cambia la configuración en el cuadro de diálogo Buscar y, al cambiar la configuración en el cuadro de diálogo Buscar, se cambian los valores guardados que se utilizan si omite los argumentos. Para evitar problemas, establezca explícitamente estos argumentos cada vez que utilice este método.

Puede utilizar los métodos FindNext y FindPrevious para repetir la búsqueda.

Ejemplos

En el siguiente ejemplo de código se establece la cadena "Smith" como valor de XmlMappedRange y, a continuación, se utilizan los métodos Find, FindNext y FindPrevious para buscar la primera celda con la cadena "Smith". Dado que un control XmlMappedRange contiene siempre una celda, en todos los casos se encuentra la misma celda. En este ejemplo de código se supone que la hoja de cálculo actual contiene un control XmlMappedRange denominado 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);
}

Seguridad de .NET Framework

Vea también

Referencia

XmlMappedRange Interfaz

Microsoft.Office.Tools.Excel (Espacio de nombres)