• 2

請問Excel如何設定計算值的有效位數?

例如:

1/2=0.5 1位有效位數
1/4=0.25 2位有效位數
1/8=0.125 3位有效位數
4/2=2 1位有效位數
100/2=50 2位有效位數
9/8=1.125 4位有效位數

如果設定3位有效位數,應該要變成:
0.500
0.250
0.125
2.00
50.0
1.13

不知道在Excel中要如何設定?
謝謝!
~ coco (nijawang) ~ 蔬食抗暖化,減碳救地球!
2010-03-11 21:32 發佈
在活頁按右鍵
儲存格格式內容裡
15151515


雖然我太不懂你意思
但是....................不用謝!
nijawang wrote:
如果設定3位有效位數,應該要變成:
0.500
0.250
0.125
2.00
50.0
1.13
可以問一下為什麼要這樣做嗎?
借個標題 問一下類似的問題

小弟學電的 常要整理一推電阻 電流 電壓的資料

請問要怎樣設定成,以千位作為顯示單位

10000歐姆 --》10K
1000歐姆 --》 1k
0.01伏特 --》10mV
1E-5安培 --》10uA
1E-7安培 --》 100nA

說明裡面啥都有,還都中文的,講的也很專業,有空就去看看吧。


louis0131 wrote:
在活頁按右鍵
儲存格格式內容裡


這個是設定我要幾位小數,不是有效位數。


Wei_1144 wrote:
可以問一下為什麼要這樣做嗎?


因為各種儀器總有它的有效精準度,所以要設定合理的有效位數。
例如,一把尺的最小刻度是0.1cm,那若量到0.05cm的數值,表示這值是用估的。
是做工程方面的一位親人問我的要如何設定有效位數的…
我所記得的有效位數定義大概是這樣。


dror wrote:
說明裡面啥都有,還都中文的,講的也很專業,有空就去看看吧。


可是說明裡面找不到吔…


謝謝各位的回覆~
~ coco (nijawang) ~ 蔬食抗暖化,減碳救地球!
nijawang wrote:
這個是設定我要幾位小...(恕刪)


此部分為Excel內說明有相關部分的部分內容....
精確度
是計算精準度的度量。Excel 會以精準度為 15 位數的有效數字進行儲存及計算。不過,您可以變更計算的精準度,這樣 Excel 在重新計算公式時,會使用顯示的值而不是儲存的值。


瞭解陣列公式
本節內容簡介陣列公式,並說明如何輸入、編輯並進行疑難排解。
為什麼要使用陣列公式?
如果您有曾經在 Excel 中使用過公式的經驗,就知道您可以執行一些相當複雜的運算 (例如,您可以計算任何指定年數的貸款總值),不過,如果真的要純熟運用 Excel 中的公式,必須知道如何使用陣列公式。您可以使用陣列公式來執行如下複雜的工作:
計算儲存格範圍中所包含的字元數。
只加總符合特定條件的數字,例如範圍中的最低值或是落在上限與下限之間的數字。
加總值範圍中每隔 n 個數的值。


如果真的說明內的東西沒辦法滿足你的需求,那你大可以直接回他說"Excel"辦不到就好了。

nijawang wrote:
因為各種儀器總有它的有效精準度,所以要設定合理的有效位數。
例如,一把尺的最小刻度是0.1cm,那若量到0.05cm的數值,表示這值是用估的。
是做工程方面的一位親人問我的要如何設定有效位數的…
我所記得的有效位數定義大概是這樣。


你說的那種是工具的精度,也就是精確度,例如一台雕刻機能切割到最小0.001的斷面,所以他的精度是0.001。
然而有效位數卻是指,當計算時能處理的最大數字單位位數,例如一般月份表單能填入的有效數值是1~12,有效位數是2

而你發文的這個部分(如下)
如果設定3位有效位數,應該要變成:
0.500
0.250
0.125
2.00
50.0
1.13

這樣才是所謂"有效位數=3"
0.50
0.25
0.12
2.00
50.0
1.13

一般有效位數都是分成小數點前後的有效位數,因為公式太復雜且沒有一種常規在,例如如上遇到50.003這樣的數值有效位數要怎樣下指令去讓電腦判斷(0.003該進兩位成50.1還是維持50.0),且例如貨幣最小單位為小數點後兩位,超過就會捨去或是進位,所以才會有所位的四捨五入這種東西出現(一種平均法則的運用)

最後到底Excel能不能作到呢?!看了那麼多還不知道它能不能作到你想要的結果,那我也沒辦法了(畢竟我還是搞不懂你到底要什麼)。
如果想直接要作法,我只能跟你說工具跟知識你都有了(國中數學+Excel說明+基本邏輯),要別人代刀不如自己去搞懂變成自己的東西。
看的懂你所謂的有效位數
但不太懂你真正的需求是什麼
也許可以試試看 VBA
A2 為 值 例如1.2301
E2 為 有效位數 例如4

以下為結果 只有測試過正數 負數沒測過

=IF(LOG(A2)<-1,LEFT(TEXT(INT(INT(A2*(10^(E2-1-INT(LOG(A2))))*-2)/-2)/(10^(E2-1)),"0.0000000"),E2+1)&"E-"&ABS(INT(-ABS(LOG(A2)))),IF(LOG(A2)>=E2,LEFT(TEXT(INT(INT(A2*(10^(E2-1-INT(LOG(A2))))*-2)/-2)/(10^(E2-1)),"0.0000000"),E2+1)&"E+"&ABS(INT(-ABS(LOG(A2)))),IF(AND((LOG(A2)<E2),(LOG(A2)>=(E2-1))),LEFT(TEXT(INT(INT(A2*(10^(E2-1-INT(LOG(A2))))*-2)/-2)/(10^(E2-1-INT(LOG(A2)))),"0.0000000"),E2),LEFT(TEXT(INT(INT(A2*(10^(E2-1-INT(LOG(A2))))*-2)/-2)/(10^(E2-1-INT(LOG(A2)))),"0.0000000"),E2+1))))


附加壓縮檔: 201003/mobile01-4329087f2d3858534af95c60f9de9379.zip
nijawang wrote:
1/2=0.5 1位有效位數
1/4=0.25 2位有效位數
1/8=0.125 3位有效位數
4/2=2 1位有效位數
100/2=50 2位有效位數
9/8=1.125 4位有效位數


如果上面這些的前半段是除法,那顯然不合有效位數的邏輯
像 9 除以 8,除數與被除數的有效位數都是1位,計算後的有效位數不會增加到4位

回歸正題

有效位數最簡單的做法,應該是用 科學記號 的格式來看

0.5 = 5 x 10^-1 = 5E-1 ..... 5 是有效數字, 共 1 位有效數字
0.25 = 2.5 x 10^-1 = 2.5E-1 ..... 2 跟 5 是有效數字, 共 2 位有效數字
50. = 5.0 x 10^1 = 5.0E1 ..... 5 跟 0 是有效數字, 共 2 位有效數字
(若只寫 "50", 無法確定後面的 0 是不是有效位數...)
  • 2
評分
複製連結