回答
您的意思是您想在VBA中使用公式嗎?例如:
Dim iVal As Integer
iVal = Application.WorksheetFunction.COUNTIF(Range("A1:A10"),"Green")
應該工作。
這不是究竟是你在找什麼,但這是我過去如何解決這個問題;
您可以輸入一個公式如:
=COUNTIF(A1:A10,"Green")
...進入細胞。這將計算A1和A10之間包含文本「綠色」的單元格數量。然後,您可以在VBA宏中選擇該單元格值並將其作爲正常分配給一個變量。
你的答案desserves +1給了按照正確的方式。我希望這會鼓勵你繼續回答其他問題 – JMax 2011-12-24 14:28:01
好的答案謝謝你,以不同的方式表明我可以做到這一點 – BradStevenson 2012-01-04 12:14:11
單程;
var = count("find me", Range("A1:A100"))
function count(find as string, lookin as range) As Long
dim cell As Range
for each cell in lookin
if (cell.Value = find) then count = count + 1 '//case sens
next
end function
作品 - 但在體積較大的範圍內測試逐個單元格會很慢,更好地使用像JMax這樣的函數,或者使用範圍'Find'方法 – brettdj 2011-12-22 06:09:09
Works,非常感謝,但是和上面一樣,JMax的方法似乎對我更好用 – BradStevenson 2012-01-04 12:13:33
不是你問的,但可能有用。
當然你可以用矩陣公式做同樣的事情。 只是讀取包含電池的結果:
Cell A1="Text to search"
Cells A2:C20=Range to search for
=COUNT(SEARCH(A1;A2:C20;1))
請記住,進入矩陣公式需要CTRL + Shift + Enter,而不只是ENTER鍵。 後,它應該是這樣的:
{=COUNT(SEARCH(A1;A2:C20;1))}
bummi ...如果有人做出否定評估會告訴我們爲什麼會不會很酷?那麼下一次,我不會犯同樣的錯誤?我知道我是一個新手,所以我可能是錯的... – 2014-12-19 13:56:09
我不是投票的人,但我的猜測是,問題開始「我需要寫一個宏」,它有「VBA 「在標題的開頭,但你的答案實際上是一個工作表函數。我也覺得看到沒有任何解釋的讚譽是令人討厭的。 – 2017-05-31 21:32:59
- 1. VBA - 設定一個數值數組,並將其與細胞
- 2. 轉移細胞VBA
- 3. VBA - 每個細胞
- 4. 只有細胞在左邊的平均細胞含有一個數字
- 5. VBA查找所有含有細胞及鄰近
- 6. VBA:在細胞分裂的文本,在細胞
- 7. Excel的VBA宏服用細胞對列
- 8. Excel VBA中,移動細胞新列
- 9. 如果計數(值)> 1,將所有值成單細胞
- 10. 包含小數點細胞重命名列的值
- 11. 計數細胞與MATLAB
- 12. 查找特定細胞的Excel VBA宏
- 13. VBA複製從紙張的特定細胞在另一個細胞
- 14. VBA的Excel - 從細胞
- 15. Excel VBA中搜索細胞
- 16. 。細胞VBA參考問題
- 17. 條件細胞計數基於行或列標題值
- 18. 計算圈數的細胞被包含在
- 19. Excel 2010中VBA細胞數學
- 20. 細胞陣列
- 21. 檢查細胞在Excel中有數據,然後向列添加細胞向左
- 22. 卡桑德拉空細胞!=墓碑細胞計數
- 23. errror而具有低細胞計數的值分組爲水平
- 24. 從UILongPressRecognizer確定細胞的細胞
- 25. VBA將細胞/細胞的範圍傳遞給多個潛艇
- 26. 自定義函數計算所用的細胞數在一列在Excel 2010
- 27. 表在C#有條件細胞值
- 28. 如何從細胞空行在Excel(VBA)
- 29. 重疊細胞含量
- 30. 改變細胞值
順便說一句,你可以在你的搜索字符串中添加通配符:'iVal = Application.WorksheetFunction.COUNTIF(Range(「A1:A10」),「* Green *」)' – 2015-10-30 15:57:47