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 值:xlWholexlPart

SearchOrder
Object

可以是下列其中一個 XlSearchOrder 值:xlByRowsxlByColumns

SearchDirection
XlSearchDirection

搜尋方向。可以是下列 XlSearchDirection 其中一個值: xlNextxlPrevious

MatchCase
Object

true 表示搜尋時區分大小寫。 預設值是 false

MatchByte
Object

只有在您選取或安裝雙位元語言支援時才能使用。 true 表示只會將雙位元組字元與雙位元組字元比對,否則為 false,表示將雙位元組字元與其對等的單位元組字元比對。

SearchFormat
Object

搜尋格式。

傳回

Range 物件,表示第一個含有此資訊的儲存格。

範例

下列程式代碼範例會 Find 使用 方法來尋找控制項中具有 值 Seashell 的第一個 NamedRange 儲存格。 然後,此範例會使用 FindNextFindPrevious 方法來尋找具有 值的 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 傳回 。

這個方法不會影響選取範圍或作用中單元格。

每次使用此方法時,都會儲存 、LookAtSearchOrderMatchByte 的設定LookIn。 如果您下次呼叫 方法時未指定這些自變數的值,則會使用儲存的值。 設定這些自變數會變更 [尋找] 對話框中的設定,變更 [尋找] 對話框中的設定會變更如果您省略自變數時所使用的已儲存值。 若要避免問題,請在每次使用此方法時明確設定這些自變數。

您可以使用 FindNextFindPrevious 方法來重複搜尋。

當搜尋到達指定搜尋範圍的結尾時,它會包裝到範圍的開頭。 若要在發生此換行時停止搜尋,請儲存第一個找到單元格的位址,然後針對這個儲存的地址測試每個後續找到的單元格位址。

選擇性參數

如需選擇性參數的資訊,請參閱 Office 方案中的選擇性參數

適用於