2013-11-01 34 views
2

我需要找出使用VBA在工作表中出現一系列數字的次數。例如:查找並計算工作表中發生的次數

201-1 -55-8799

301-5-55-8799

202-1-55-8799

201-1 -55- 8799

999-5-55-8799

001-2-55-8799

我想知道201-1在這張表中發生了多少次。當您在Excel中執行FindAll時,它會在底部告訴您找到了多少個單元格。

我已經使用CountIf進行了實驗,但只有在細胞剛剛包含201-1時才起作用。

上述搜索的答案應該是找到201-1的2個實例。

然後我需要在不同的工作表中寫入發生次數。

感謝

回答

2

使用COUNTIF公式

=COUNTIF(A2:A12,"201-1*")

enter image description here

enter image description here

enter image description here

+0

謝謝Santosh,但這確實給了我一些嘗試。 astrick是否是一張通配符?我試着使用它,現在它似乎只能找到201-1之後的數據。如果條目僅包含201-1,則它不會找到它。 – user2946105

+0

@ user2946105絕對是的。閱讀更多[這裏](http://office.microsoft.com/en-in/excel-help/countif-HP005209029.aspx)乾杯 – Santosh

+0

謝謝!這適用於我的目的。我有一個額外的後續問題。有沒有一種方法可以指定它在整個工作表中搜索的範圍?我正在試驗.CurrentRegion,但它並沒有訣竅 – user2946105

0

你能做到這一點,利用VBA

Dim tab_input as Variant 

tab_input = ~your range~ 
specific_counter = 0 

For i = 1 to Ubound(tab_input) 
If Left(tab_input(i,1),5) = "201-1" Then 
    specific_counter = specific_counter + 1 

    End If 
Next 

msgbox specific_counter 

將計已經離開文本開頭201-1並顯示在一個盒子裏的金額有多少細胞。

+0

謝謝,但201-1並不總是在所有情況下,左側開始。我懇求在我的questino中沒有說清楚。雖然 – user2946105

0

我會建議使用Excel自己的查找功能編程。事情是這樣的:

http://www.ozgrid.com/VBA/find-method.htm

+0

謝謝,我稍微嘗試了一下,發現Excel的Find方法只返回查找的地址,然後你必須在你的搜索中使用FindNext。 Excel中沒有FindAll方法可用afaik。 – user2946105