Excel VBA 單元格查找


在編寫代碼時,常需要依據指定內容在指定區域查找符合條件的單元格,這時就需要用

查找的方法。在工作表中,可以執行【編輯】/【查找】命令查找指定的單元格,同樣也可以利用在公式中使用Match 等函數對單元格進行查找。

工具/原料

 
  • Excel 2013

一、Find查找

 
  1. 1

    單元格范圍.Fing. (查找內容,查找開始位置,搜‘索范圍,單元格區配γ 搜索方式,搜索類別,區分大小寫,區分全/半角)

    Excel VBA 單元格查找
  2. 2

    具體解釋

    <1> 查找內容:

     是查找的依據。和【查找} 對話框的“查找內容”文本框相對應。

    <2>查找開始位置: 

    查找開始位置。默認為活動單元格,如果未指定,則從指定區域左上角開始查找。

    <3> 搜索范圍: 

    是查找公式、值還是備注,等同於{ 查找】對話框中的“搜索范圍” 。可為xlFormulas (公式)、xlValues (值)、xlComments (備注)和 xlFindlookln 常量之一。

    <4> 單元格匹配: 

    是指查找單元格的部分內容還是全部內容。和【查找】對話框的“單元格匹配” 選項功能一致。可為xlPart (部分內容)、xlWhole (內容匹配)和XlLookAt 常量之一。

    <5> 搜索方式: 

    是按行還是列搜索。和【查找】 對話框中“搜索方式”功能一致。

    可為xlByColumns (按列)或xlByRows (按行) XlSearchOrder 常量之一。

    <6>區分大小寫: 

    查找時是否區分大小寫。和{ 查找} 對話框中的“ 區分大小寫”選項相對應。若指定為True , 區分大小寫查找。默認值為False o

    <7> 區分全半角: 

    和{ 查找} 對話框的“ 區分全/半角”選項功能相一致。

    <8>搜索類別:

     可為xlNext 或xlPrevious XlSearchDirection 常量之一。

    XlPrevious 是查找前一個單元格。默認常量為xlNext ,這時和【查找} 對話

    框的查找下一個功能一致。

     

    Excel VBA 單元格查找
  3. 3

    Sub 查找單價()

    Dim intRow

    intRow = Range("a:a").Find(Range("g1")).Row

    Range("g2") = Range("B" & intRow)

    End Sub

    Excel VBA 單元格查找
  4. 4

    執行結果如下圖所示:

    Excel VBA 單元格查找
    END

二、使用工作表函數進行查找

 
  1. 1

    除了使用Find 方法進行查找外,還可以使用工作表函數實現單元格查找。如查找位置可以使用Macth 函數: 查找並返回內容可以使用Vlookup 函數。本節中涉及到的Macth 函數和Vlookup 函數語法請參考Excel 幫助文件。本節只介紹如何在Excel VBA 中調用該函數。

  2. 2

    使用match函數返回查找單元格的位置

    Sub 查找單價()

    Dim intRow

    intRow = Application.Match(Range("a1"), Range("a:a"), 0)

    Range("g2") = Range("B" & intRow)

    End Sub

    Excel VBA 單元格查找
  3. 3

    執行結果如下圖所示:

    Excel VBA 單元格查找
  4. 4

    vlookup 函數查找單價

    Sub 查找單價()

     

    Range("g2") = Application.VLookup(Range("a2"), Range("a:d"), 2, 0)

     

    End Sub

    Excel VBA 單元格查找
  5. 5

    執行結果如下圖所示

    Excel VBA 單元格查找
  6.  


免責聲明!

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



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