2013年9月23日 星期一

Excel-取出數值中的每一位數

有人有這樣的需求,想要取出 Excel 工作表儲存格中數字的每一個位數,該如何處理呢?

(一) 整數數值

參考下圖的數字為 9 位數的數值,要取出其中的每個位數。

儲存格B2:=MID($A2,COLUMN(A2),1)

將數值視為文字來處理,以 MID 函數來取出文字。

複製儲存格B2,貼至儲存格B2:J2。再往下複製到各列中。

如果數值被設定了其他格式(千分位符號、百分比符號、增加小數點等),都不會影響其取得數值的各個位數。

(二) 含小數數值

也有人以運算方式來取得每個位數,下圖中的數字是整數為 5 位數,小數部分也是 5 位數。

其中整數部分:(假設數值置於儲存格A2)

  •  個位數 =MOD(INT(A2/1),10)
  •  十位數 =MOD(INT(A2/10),10)
  •  百位數 =MOD(INT(A2/100),10)
  •  千位數 =MOD(INT(A2/1000),10)
  •  萬位數 =MOD(INT(A2/10000),10)
  • 十萬位數 =MOD(INT(A2/100000),10)

儲存格B2:=MOD(INT($A2/10^(5-COLUMN(A1))),10)

複製儲存格B2,貼至儲存格B2:F2。再往下複製到各列中。

小數位數部分:(假設數值置於儲存格A2)

  •  十分位數 =MOD(INT(A2/.1),10)
  •  百分位數 =MOD(INT(A2/.01),10)
  •  千分位數 =MOD(INT(A2/.001),10)
  •  萬分位數 =MOD(INT(A2/.0001),10)
  • 十萬分位數 =MOD(INT(A2/.00001),10)
  • 百萬分位數 =MOD(INT(A2/.000001),10)

儲存格H2:=MOD(INT($A2/10^(-COLUMN(A1))),10)

複製儲存格H2,貼至儲存格H2:L2。再往下複製到各列中。

沒有留言:

張貼留言

好康東東