2016-02-05 54 views
-1

我的問題可能有點令人困惑。Excel Vba: - 如果連續發現匹配,則顯示單元值

我正在嘗試查找在表格中匹配的次數的次數,但是如果一個數字在單個行中出現多次,它就不應該算在內。它僅爲每一行計數1。

ABCD狀態 1個ID1 DAY1 VAL1解決 2 ID2 ID1 ID1不解析 3 ID3 DAY1 VAL3不解析 4 ID1 DAY2 ID1解決 5 ID2 DAY2 val2的不解析 6 ID3 DAY2 VAL3不解析

因此,如果我搜索id1,它必須提供一個3而不是5的計數,因爲它在第2行的&中重複。 而且它也應該顯示其狀態,如2已解決1未解決,因爲1 &已解決,因此計數爲2已解決且第二行未解析。

任何幫助是極大的讚賞。並且請提供VBA代碼的建議..

+0

歡迎來到SO。請分享迄今爲止開發的代碼。如果沒有開始。請使用代碼和您面臨的問題開始並更新您的問題。這裏是我的指針。 – Siva

+0

爲每一行做一個Row.Find,如果找到一個匹配,則將計數器變量加1,迭代所有行的相同操作。沒有太多複雜的東西 – Siva

回答

1

比方說,你正在尋找「ID1」,在我行和j列的一個陣列,與第一單元A1

Dim SearchCriteria as string 
Dim CheckRow, CheckCol, i,j, HitCounter as long 

SearchCriteria = "id1" 
i = 10 
j = 10 
HitCounter = 0 

For CheckRow = 1 to i 
    For CheckCol = 1 to j 
     If(instr(cells(CheckRow ,CheckCol),SearchCritera) <> 0 then 'If the criteria is found in the cell 
      HitCounter = HitCounter + 1 
      Exit For 'Exit the column loop and go to the next row 
     End if 

    Next j 
Next i 

MsgBox "Your criteria was found in " & HitCounter & " different rows" 
+0

感謝您解釋它@Siva。現在我覺得這是多麼可笑的問題。 –

相關問題