我想計算連續相同值的頻率。該值必須至少佔據兩個單元格並且必須彼此相鄰。
我想在這裡發布圖片,但我沒有足夠的聲譽。不管怎樣,截圖可以在這裡找到:https://www.dropbox.com/s/1em9ltssc1ruw0u/stackOverflow_excelIssue_CountFrequencyofsimilarvaluesin Betweenblankcells.jpg?dl=0
J7:BE7 是人們輸入值的地方 - 它對應於時間,以 30 分鐘為增量。
在同一張紙的不同部分上,在本例中,DD7:EY7 是我運行公式的位置。
此公式位於(第一列)DD7 -- COUNTIF(J7:$BE7,J7)
此公式位於(最後一列)EY7 -- COUNTIF(BE7:$BE7,BE7)
DD7 上的公式計算 J7 上的數值出現在第 7 行(從 J 列到 BE)的次數。
場景 1:如果「橘色」只出現一次,則此公式效果很好。以我的 K7:L7 為例。
情境 2:問題是當「橘色」再次出現在非連續儲存格上時。我的意思是,「橙色」出現在 K7:L7 上,然後再次出現在 P7:Q7 上。
在場景1中,檢查K7:L7的公式的結果是2,這是期望的值。
在場景2中,檢查K7:L7時公式的結果是4,因為它也會計算K7:L7上出現的「橘色」。
我希望如果 M7 有不同的值,計數就會停止。 K7:L7 包含“橙色”,M7:N7 包含“蘋果”。或如果中間有空單元格,計數將停止,例如 U7:V7 包含“guava”,而 T7 為空,則 X7:Y7 再次包含“guava”。
水果可能佔據每行的兩到四十八列。
我知道這很羅嗦,但我找不到其他方法來解釋它,英語不是我的第一語言。
提前謝謝您。
〜馬克
答案1
如果我正確理解您的請求,以下公式將起作用。我的解決方案需要一個虛擬列和一個輔助行,但它們可以隱藏。此外,您可能可以透過一些工作消除虛擬列,並且可以將輔助行放在任何地方。
我假設您的客戶姓名位於第 2 行。在儲存格 B3 中,輸入公式:
=IF(B2="", "", IF(B2<>C2, 1, C3+1))
意義:
- 如果B2="",則該時隙的客戶端名稱為空,因此這是一個空閒時隙,因此顯示空白。
- 否則,如果 B2<>C2,則該時隙和下一個時隙有不同的客戶端(C2 可能為空,也可能不為空),因此這是該約會的最後一個時隙。表示為 1。
在儲存格 B4 中,輸入:
=IF(A2<>B2, B3, "")
- 如果A2<>B2,則該時段與前一個時段有不同的客戶端(A2可能為空,也可能不為空),因此這是該預約的第一個時段。顯示B3,顯示該預約有多少時段(半小時)。否則,顯示空白。
這是使用這些公式得出的數據:
我更改了 GUAVA 數據以更好地說明其工作原理:
你說,“該值必須至少佔據兩個單元格......”如果我理解正確的話,您可以將第 4 行中的公式更改為:
=IF(AND(A2<>B2,B3>1), B3, "")
即,僅當 B3 值 > 1 時才顯示它。