2013-04-08 123 views
8

我有一個從另一個數據庫導入excel的名稱列表。列表中感興趣的名稱以紅色字體突出顯示。我想要一種方法來計算它,即約翰史密斯在一列中總共出現5次,但5次中有3次,他的名字以紅色字體突出顯示。所以我想看看他的名字有多少個實例出現紅色。如何統計excel中不同字體顏色的文本

我知道如何搜索他的名字的所有實例,例如= COUNTIF(A1:A100,「John Smith」)

我在創建一個VB函數時也有幫助,該函數在工作表中統計所有紅色(= SumRed)值(一旦指定顏色索引)使用這個:

Function SumRed(MyRange As Range) 
    SumRed = 0 
For Each cell In MyRange 
    If cell.Font.Color = 255 Then 
     SumRed = SumRed + cell.Value 
    End If 
Next cell 
End Function 

我只是無法找到一種方法來結合兩種計數條件。任何幫助將非常感激!

+0

'+ cell.value'這並未看起來不錯? – glh 2013-04-08 19:46:31

+0

不需要VBA。 Excel公式也可以提供幫助。 – 2013-04-08 20:28:55

回答

0
For Each cell In Range("A1:A100") 
    If cell.Font.Color = 255 And cell.Value = "John Smith" Then 
     myCount = myCount + 1 
    End If 
Next 
2

我覺得你幾乎沒有,但這值得其他功能@user打賭我妙語:(

Function CoundRedAndText(MyRange As Range, Mytext as string) as long 
    CoundRedAndText = 0 
    For Each cell In MyRange 
     If cell.Font.Color = 255 and cell.value like MyText Then 
      CoundRedAndText = CoundRedAndText + 1 'you had cell.value but dont know why? 
     End If 
    Next cell 
End Function 

用法,=CountRedAndText(A1:A25, "John Smith")

13

你不需要對VBA這個,但仍,如果你想VBA解決方案,那麼你可以與任何其他兩個答案中去。:)

我們可以利用Excel公式找到一個單元格的字體顏色。看到這個例子。

我們將使用XL4宏。

  1. 打開名稱管理器
  2. 給一個名稱。說FontColor
  3. 鍵入此公式中是指爲了=GET.CELL(24,OFFSET(INDIRECT("RC",FALSE),0,-1))並單擊公式確定

enter image description here

說明

語法是

GET.CELL(type_num, reference) 

Type_num is a number that specifies what type of cell information you want. 
reference is the cell reference 

在上述公式號碼24爲單元格中第一個字符的字體顏色提供了一個數字,範圍爲1到56.如果字體顏色是自動的,則返回0. 因此存在缺點。確保整個字體顏色是紅色的。我們可以使用64,但這不能正常工作。

OFFSET(INDIRECT("RC",FALSE),0,-1)指的是左側的立即小區。

現在在單元格=IF(AND(Fontcolor=3,B1="John Smith"),1,0)中輸入此公式並將其複製下來。

注意:公式必須輸入到包含文本的單元格的右側。

Screentshot

enter image description here

編輯(2013年10月12日)

要計算與特定的背景色細胞看到THIS鏈路

+0

+1這個優雅和詳細的選擇vba。你每天學習新的東西。 – glh 2013-04-09 08:03:21

+0

我覺得這是一個非常無用的方法。而且似乎需要提前設定ALOT。獲取所有數據並確保可以移動數據,在名稱旁邊插入一個列或將名稱移動到列的末尾,以便將其放置在列中。如果你有500,000條記錄要檢查,似乎也會非常緩慢。另外我最大的錯誤是可重用性,如果將來OP需要計算每個獨特的名稱和顏色組合,那麼執行和調試將需要很長時間才能實現? – user2140261 2013-04-09 13:22:26

+0

+1 - 爲了找到字體顏色(和背景顏色),這正是我所尋找的 - 允許我根據顏色編寫函數,但不訴諸於VBA。非常感謝。 – Unsliced 2014-03-03 11:35:24

相關問題