EXCEL 比對資料後,如果只有四位數,就轉換成數值。不是四位數就不改,要如何修改?

 你可以使用 LEN(A2) 來判斷 A2 是否為四位數,並在滿足條件時轉換為數值,否則保持原樣:

excel
=IF(COUNTIF($A$2:A2, A2) = 1, IF(AND(LEN(A2) = 4, ISNUMBER(A2 + 0)), A2 + 0, A2), "")

公式解釋:

  1. COUNTIF($A$2:A2, A2) = 1

    • 檢查 A2 是否是第一次出現,若是,則繼續執行;否則返回 ""(空白)。
  2. AND(LEN(A2) = 4, ISNUMBER(A2 + 0))

    • LEN(A2) = 4:檢查 A2 是否為 4 個字符(無論是純數字還是數字格式的文字)。
    • ISNUMBER(A2 + 0):嘗試將 A2 加 0,這樣能檢查 A2 是否能轉換為數值(數字格式的文字也可以轉換)。
  3. A2 + 0

    • A2 是四位數,則加 0 轉換為數值。
    • A2 不是四位數,則保持原值不變(即保留文字格式)。

運作方式:

A 列值結果
12341234(數值)
"5678"5678(數值)
12"12"(文字)
"abcd""abcd"(文字)
12345"12345"(文字)

這樣就能確保: ✅ 四位數字轉換為數值
非四位數的數字或文字保持不變
重複值不顯示

沒有留言:

張貼留言

excel 最大值用max,取最小值但要排除0,要怎麼寫?

 =MIN(IF(A1:A10<>0, A1:A10))