VBA函數 find


Range.Find 方法 (Excel)

在區域中查找特定信息。

語法

表達式.Find (What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

expression 一個表示 Range 對象的變量。

參數

名稱

必需/可選

數據類型

說明

What

必需

Variant

要搜索的數據。 可為字符串或任意 Microsoft Excel 數據類型。

After

可選

Variant

要在其后開始搜索的單元格。 從用戶界面搜索時,這對應於活動單元格的位置。

請注意,After 必須是區域內的單個單元格。 請注意,搜索在此單元格之后開始;在方法回繞到此單元格之前,不會搜索指定的單元格。

如果未指定此參數,搜索將在區域左上角的單元格后面開始。

LookIn

可選

Variant

可以是下列 XlFindLookIn 常量之一:xlFormulasxlValuesxlCommentsxlCommentsThreaded

LookAt

可選

Variant

可以是下列 XlLookAt 常量之一:xlWholexlPart

SearchOrder

可選

Variant

可以是以下 XlSearchOrder 常量之一:xlByRowsxlByColumns

SearchDirection

可選

XlSearchDirection

搜索的方向。

MatchCase

可選

Variant

如果為 True,則搜索區分大小寫。 默認值為 False

MatchByte

可選

Variant

僅在選擇或安裝了雙字節語言支持時使用。 如果為 True,則雙字節字符僅匹配雙字節字符。 如果為 False,則雙字節字符匹配其單字節等效字符。

SearchFormat

可選

Variant

搜索格式。

返回值

一個 Range 對象,它代表在其中找到該信息的第一個單元格。

注解

如果未發現匹配項,此方法返回 NothingFind 方法不會影響所選內容或活動單元格。

每次使用此方法時,都會保存 LookInLookAtSearchOrderMatchByte 的設置。 如果在下次調用此方法時不指定這些參數的值,則使用保存的值。 設置這些參數會更改“查找”**** 對話框中的設置,更改“查找”**** 對話框中的設置會更改省略參數時使用的已保存值。 為避免出現問題,請在每次使用此方法時顯式設置這些參數。

使用 FindNextFindPrevious 方法可重復搜索。

當搜索到達指定的搜索區域末尾時,它會繞到該區域開頭位置。 若要在發生此繞回時停止搜索,請保存第一個找到的單元格的地址,然后針對此保存的地址測試每個連續找到的單元格地址。

若要查找與更復雜模式匹配的單元格,請將 For Each...Next 語句與 Like 運算符結合使用。 例如,以下代碼搜索區域 A1:C5 中使用其名稱以字母 Cour 開頭的字體的所有單元格。 Microsoft Excel 找到一個匹配項時,會將字體更改為 Times New Roman。

VB

For Each c In [A1:C5] If c.Font.Name Like "Cour*" Then c.Font.Name = "Times New Roman" End If Next`

 

示例

本示例在第一個工作表的單元格區域 A1:A500 中查找包含值 2 的所有單元格,並將這些單元格的值更改為 5。

VB

With Worksheets(1).Range("a1:a500")

    Set c = .Find(2, lookin:=xlValues)

    If Not c Is Nothing Then

        firstAddress = c.Address

        Do

            c.Value = 5

            Set c = .FindNext(c)

        Loop While Not c Is Nothing

    End If

End With


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM