需要一個公式來計算以逗號分隔的字串中以特定數字開頭的數字

需要一個公式來計算以逗號分隔的字串中以特定數字開頭的數字

我需要一個公式來計算以逗號分隔的字串中以特定數字開頭的數字

第一個數字始終是 1,2 或 3;第二位數字可以是1到6之間。如果這些計數大於零,則計算它們與第二位數字的組合。

這是具有預期解決方案的範例。假設 A1 有以下字串:

11234,12345, 23456, 31423, 13009, 14001,24005, 12222, 21222, 33215, 21236 

然後:

  • B1 應傳回 5(字串中以 1 開頭的所有數字的計數)
  • C1 應為 3(字串中以 2 開頭的所有數字的計數)
  • D1 應為 2(字串中以 3 開頭的所有數字的計數)

答案1

這個怎麼樣:

=(LEN(","&SUBSTITUTE($A$1,", ",","))-LEN(SUBSTITUTE(","&SUBSTITUTE($A$1,", ",","), ","&B2,"")))/LEN(","&B2)

(其中行包含您嘗試在 A1 中匹配的字串。


怎麼運作的:

  • 您可能會注意到它出現了兩次: ","&SUBSTITUTE($A$1,", ",",") 這會刪除空格並在前面添加一個逗號,因此您的

原始字串: 11234,12345, 23456, 31423, 13009, 14001,24005, 12222, 21222, 33215, 21236

變成

新字串: ,11234,12345,23456,31423,13009,14001,24005,12222,21222, 33215,21236

  • 現在長公式可以重寫為:=(LEN(newString)-LEN(SUBSTITUTE(newString, ","&B2,""))) /LEN(","&B2)

  • 假設您要找的初始數字位於B1(例如B1=1這進一步崩潰如下:

=(LEN(newString)-LEN(SUBSTITUTE(newString, ",1" ))) /LEN(",1")

  • 所以我們有:取得整個新字串的長度(67),然後減去所有出現的,1刪除的長度(57)。這給出了,1(10)所佔用的字元數。除以 (2) 的長度,1即可得知,1發生了多少次。 (5)

您可以將此公式拖曳到 A 行,然後將不同的「搜尋」數字放入行中它會將它們全部計數。

警告: 僅當數字以逗號分隔和/或逗號空格分隔時才有效,如您的範例所示。

答案2

https://exceljet.net/formula/count-numbers-that-begin-with看看這個網站。所以公式是: =SUMPRODUCT(--(LEFT(L1:X20,1)="(在此輸入您要找的數字)”))

相關內容