在 Excel 的工作表的儲存格中,可能會有全型字和半型字交雜的字串,如何找出儲存格中全型字和半型字的數量呢?(參考下圖)
儲存格B2:{=SUM(--(CODE(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1))>255))}
這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。
以字串「123四五67八九」為例:
ROW(INDIRECT("1:"&LEN(A2))):
利用LEN(A2)找出儲存格A2的字數,該公式的結果為「ROW(1:9)」。
MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1):
在陣列公式中產生 {"1","2","3","四","五","6","7","八","九"} 陣列。
--(CODE(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1))>255):
利用 CODE 函數判斷文字的碼是否超過 255 者(半型字的碼小於256)。
其中的「--」,乃將判斷結果的
True/False 陣列:{False,False,False,True,True,False,False,True,True}
轉換為 1/0 陣列:{ 0,0,0,1,1,0,0,1,1 }
最後再以 SUM 函數計算 1 的個數,即為答案。
儲存格C2:{=SUM(--(CODE(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1))<=255))}
原理同上。
複製儲存格B2:C2,貼至儲存格B2:C15。
全站熱搜
留言列表