(先前文章內容有錯誤,目前內容為更正版)
網友根據這篇文章:Excel-計算10位元數以上的乘法,想要了解如果要模擬10位數字的『加法』運算,該如何處理?
如下圖,有二組10個數字組成的數,要執行相加的動作,如何將每個位數的結果模擬出來呢?
【公式設計與解析】
1. 求兩數相加的實際總和
為了避免公式過長,說明不易,特別使用輔助儲存格M3。
(1) SUMPRODUCT(B2:K2,(10^(11-COLUMN(A:J))/10))
因為10個位數分別放在10個儲存格中,所以先將儲存格B2:K2中的10個數字組合成一個完整的10位數。
(2) SUMPRODUCT(B1:K1,(10^(11-COLUMN(A:J))/10))
將儲存格B1:K1中的10個數字組合成一個完整的10位數。
將第(1)式和第(2)式相加即為這兩個10位數相加的和。
儲存格M3:=SUMPRODUCT(B2:K2,(10^(11-COLUMN(A:J))/10))+
SUMPRODUCT(B1:K1,(10^(11-COLUMN(A:J))/10))
2. 取出每個位數中的數字
儲存格A3:=MID(RIGHT("0000000000"&$O$5,11),COLUMN(A:A),1)
"0000000000"&$O$5:先前兩個相加的實際總和其位元數可能是0~10個,所以先在其左側串接10個『0』。
RIGHT("0000000000"&$O$5,11):在左側串接10個『0』的字串中,由右側取出11個字,即可確保取得完整的11個字。(原先相加後的數字不達10位元者,其左側均會被補0。)
最後透過 MID 函數搭配 COLUMN 函數,將儲存格A3,複製到儲存格A3:K3,即可將上式中的11個字,由左至右取出每一個數字。
【延伸練習】
如果對於模擬『乘法』運算有興趣者,可以參考這篇文章:Excel-計算10位元數以上的乘法。
留言列表