想在不寫公式的情況下計算某個特定數字在 Excel 工作表出現幾次,請把該欄以純文字複製、貼到瀏覽器型的計數工具中,再讀取總計以及前 100 個以零為起始的符合位置。這個工具接受最多 1,000,000 字元的來源文字,以及最長 1,000 字元的搜尋字串,會回傳精確的計數,而且絕對不會把輸入內容送出你的電腦。Excel 將數字、文字和混合儲存格存放在同一個矩形網格中,而每個儲存格的值都可以複製成純文字。一旦這些文字進入你的剪貼簿,就能貼到專門的計數工具中,輸入你要尋找的確切數字,讓瀏覽器掃描完全相符的內容。結果會是一個整數總計,加上一份以零為起始的起始位置編號清單,你可以用肉眼檢查符合項目,或複製到另一份工作表。對那些只想快速得到答案、不想學習公式語法的讀者來說,這條路徑是最短的。

how to count occurrences of a number in excel
how to count occurrences of a number in excel

把 Excel 資料轉成純文字

計數工具只接受純文字,所以第一步是把你要處理的欄或範圍轉成可複製的形式。以下三種做法都有效,不需要公式或外掛。

  • 選取儲存格,在 Windows 上按住 Ctrl + C(Mac 上則是 Cmd + C),然後直接貼到工具的來源欄位。Excel 預設會以 Tab 分隔的列格式貼上可見的儲存格值。
  • 對於很長的欄,請透過「檔案 → 另存新檔」把工作表存成 CSVTXT 檔,再用記事本或其他純文字編輯器開啟,將內容複製到工具中。
  • 如果數字散落在多個欄位,先用「選擇性貼上 → 未格式化文字」貼到 Word,再從 Word 複製到工具。這樣可以獲得一整塊純文字,不含公式列或網格框線。

不論你貼上什麼內容,工具都會原封不動保留。它不會去除空白、不會統一換行字元、不會合併連續字元、也不會改寫數字,所以你貼什麼就會搜尋什麼。這一點對符合比對很重要:前導空格、千分位分隔符、出現在意外位置的負號,或是結尾的換行,都可能阻擋完全相符的比對。

貼上並設定搜尋

當純文字準備就緒,請開啟 計算出現次數 工具。介面刻意設計得很小,因為這個任務本身就不大,每個控制項都用白話說明。

  1. 把 Excel 儲存格的純文字版本貼到來源欄位。該欄位最多接受 1,000,000 字元,對數十萬個一般儲存格值來說已綽綽有餘。
  2. 在搜尋欄位輸入你要計算的確切數字。搜尋字串最長可達 1,000 字元,可以包含負號、小數點或任何其他字面字元;因為是完全相符而非規則表示式,所以不需要任何跳脫處理。
  3. 選擇是否區分大小寫。純數字不受影響,但如果你要計算的是嵌在大小寫混雜字串中的數字,例如看起來像 "v1.2" 的版本代碼或產品編號,這個選項對周圍的字母仍然會有影響。
  4. 選擇重疊行為。重疊模式在每次符合後前進一個字元;非重疊模式則會依搜尋字串的完整長度前進。對於大多數數字計算,兩種模式結果相同,但當搜尋字串包含重複字元(例如 11 或 00)時,結果就會不同。
  5. 點擊 計算。工具會回傳總計以及每個符合項的前 100 個以零為起始的起始位置。

如果搜尋欄位留空,這次執行會被刻意拒絕:否則空字串會在每個邊界都符合,產生毫無意義的計數。如果搜尋字串比剩餘來源還長,會得到零,這是有效結果而不是錯誤。編輯任何輸入或選項會清除先前的輸出,避免用舊的計數誤判為目前設定的結果。

讀取總計與位置清單

結果分為兩個部分。總計就是你想得到的答案,就算數字很大也絕對不會被截斷。位置清單則是驗證依據。每個項目都是一個以零為起始的 JavaScript 字串位移,代表來源文字的第一個字元位於位置 0、第二個字元位於位置 1,依此類推。你可以利用這些位置手動核對,或餵給其他接受字元索引的工具。

清單上限為 100 筆,避免失控的計數凍結頁面。如果你的欄位產生超過 100 筆符合,而你又想全部看到,可以縮小搜尋範圍(試著計算 1.23 而不是 1),或把來源切成多個範圍。不過,總計永遠反映完整來源,無論有多少符合項,主要數字絕對不會被掩蓋。一個實用的健全性檢查是搜尋一個你知道很少出現的子字串,例如某個你只打過一次的特定小數,確認總計為 1,再執行真正的搜尋。如果罕見字串的計數有誤,問題就出在從 Excel 萃取資料的方式,而不是工具。

重疊模式與非重疊模式

對於大多數試算表,兩種模式結果一致。它們只有在搜尋字串本身包含可從下一個字元再次符合的重複字元時才會分歧。

來源文字搜尋非重疊符合重疊符合
111111位置 0, 2位置 0, 1, 2
3.1431414位置 2位置 2
0.000位置 0, 2位置 0, 1, 2
121212位置 0位置 0

選擇權在你手上。如果你要計算的是一個數字以獨立值的形式出現幾次,請使用非重疊模式,因為它會把每次符合視為已被消耗的一個區塊。如果你要做序列分析或計算某個數字的連續出現次數,請使用重疊模式。工具刻意提供這兩種模式,避免強加任一種解讀,而這個明確的選項也能避免計數因為輸入不同而悄悄改變。

計算看起來像文字的數字

Excel 經常把看起來像數字的值存成文字,尤其是在 CSV 匯入後、開頭有單引號時,或將某欄格式化為文字時。從計數工具的角度來看這完全沒差:它只搜尋字面字元,所以 "001" 與 1 是不同的字串。如果你在搜尋欄位輸入 1,而你的儲存格存的是 001,會得到零個符合。修正方法在 Excel 端而不是工具端:重新貼上值、變更欄位格式,或依其在來源中實際呈現的字面字串來搜尋。

同樣的規則也適用於負數。負號是 "-42" 中位置 0 的一個真實字元。搜尋 42 不會在 "-42" 中找到它;請改搜尋 -42,或在貼上前先把正負號去掉。小數點用逗號還是用句點,也是英式地區碰上歐洲版 Excel 時常見的零結果來源,所以在斷定工具算錯之前,請先確認實際字元。

隱私與限制

你貼上的每個字元都只留在你的瀏覽器分頁中。這個工具不會把來源文字、搜尋字串或結果送到任何地方,也不涉及帳號、檔案上傳或外部資料庫。這種可預期的行為——相同輸入、相同選項、相同瀏覽器、相同輸出——來自於採用字面的 string indexOf 掃描,而非規則表示式或伺服器端查詢。對於不區分大小寫的執行,會以英文地區規則透過 toLocaleLowerCase 把比較的副本轉成小寫,而位置位移仍與你的原始文字對應。

硬性上限相當寬鬆但確實存在:來源 1,000,000 字元、搜尋 1,000 字元、顯示位置 100 筆,以及空搜尋會被拒絕。位置是 JavaScript UTF-16 字串位移,因此大多數一般字元佔用一個位移,而以代理對表示的字元可能佔用兩個碼位;這就是為什麼一個表情符號可能讓位置數字一次跳兩個而非一個。顯示的位移是為了可重現的瀏器與程式設計工作,而不是使用者感知的字素索引,也不會推測地區特定的等價、Unicode 正規化或腔調折疊。

什麼時候這個工具不合適

如果你真正想問的是「有多少儲存格包含數字 42」,而不是「字面 42 在我的文字中出現幾次」,那麼直接在 Excel 用 COUNTIF 公式會更快,也省去匯出的步驟。如果你想把每個符合項目替換成其他內容,尋找並取代 工具會是合適的下一步,因為它接受同樣的字面搜尋字串與大小寫選項。如果你想統計工作表中每一個相異字詞而非某個特定數字,請使用 字數計算器。而如果你需要比較同一份工作表的兩個版本、看看哪些儲存格變了,文字差異比對工具 就是為此而設計。

不過,對於「某個選定數字在萃取出來的 Excel 文字中出現幾次」這個狹隘的問題,計算出現次數工具能一鍵給你一個數字答案加上可驗證的位置清單,而且完全不必離開瀏器。

想深入了解,請參閱 以可審核的數學從字數計算閱讀時間

想深入了解,請參閱 如何乾淨地刪除 Excel 中的空白行