close

3820

Excel尋找並傳回被搜索到的欄位內容-VBA

葉辰請錦子老師幫忙,在B欄內,搜尋E欄的資料,並回傳被搜尋到的內容如下圖所示。

image

需查找的內容字數不一、位置不一,也有可能在B欄中一個地址有兩個"需查找內容"在內(可二擇一顯示)。

例如列2、列6,各有關鍵字在"需查找內容"內,有找到則回傳被"需查找內容"搜索到的欄位,沒有則顯示"-"

請問這樣有辦法做到嗎?還是回傳欄位只能單純顯示"有找到"、"無找到"

錦子老師:辰,其實這個問題是可以透過VBA的程序解決。

步驟1:按ALT+F11開啟VBA視窗。

步驟2:點取「插入 > 模組」指令,開啟一個新的空白模組。

步驟3:輸入下面程序。

Sub test3820()

For i = 2 To Range("B2").End(xlDown).Row

  Cells(i, 3) = ""

  For k = 2 To Range("E2").End(xlDown).Row

    If RTrim(Cells(i, 2)) Like "*" & RTrim(Cells(k, 5)) & "*" Then

      If RTrim(Cells(i, 3)) <> "" Then

        Cells(i, 3) = RTrim(Cells(i, 3)) & ","

      End If

      Cells(i, 3) = RTrim(Cells(i, 3)) + RTrim(Cells(k, 5))

    End If

  Next k

  If Cells(i, 3) = "" Then

    Cells(i, 3) = "-"

  End If

Next i

End Sub

image

 

步驟4:按ALT+F4鍵關閉VBA視窗。

步驟5:點取「檢視 > 巨集▼鈕 > 檢視巨集」指令。

步驟6:在【巨集】對話方塊,點取「test3820」項目,再點取「執行」鈕。

image

以上就是今天主要學習的知識點,希望對大家有所幫助~~有什麼問題歡迎留言,我會儘量及時的給大家答覆~~

更多相關影片教學:請點我

更多相關文章:請點我


arrow
arrow
    文章標籤
    VBA
    全站熱搜

    錦子老師 發表在 痞客邦 留言(0) 人氣()