2014-11-04 48 views
0

我正在創建一個電子表格,它可以作爲類似轉換網站的工具。度量衡+ 3重要數字

我試圖轉換度量單位(英寸,英尺,碼,毫米和米)。當我輸入端36英寸,我需要它顯示以下內容:

  • 36英寸
  • 3英尺
  • 1碼
  • 914毫米(技術上這將是914.4)
  • 0.914米(技術上這將是0.9144)。

我想創建一個不會轉換數字的公式,還可以將其分解爲顯示3位有效數字(不捨入)。

對於英寸轉換爲英尺,我想出了這個公式:

=ROUNDDOWN((CONVERT(A7,"in","ft"))/10^(INT(LOG10(CONVERT(A7,"in","ft")))+1),3)*10^(INT(LOG10(CONVERT(A7,"in","ft")))+1) 

這工作,直到我打更大的數字例如在40英寸將顯示爲1010毫米,我需要它顯示爲1016毫米。

我把轉換片放下來了,所以我想我要問的是如何才能讓它顯示3位有效數字,除非數字超過100,那麼小數點右邊的所有東西都可以丟棄。

+0

不知道我明白。要將40英寸轉換爲毫米,爲什麼不使用:= 10^3 * CONVERT(40,「in」,「m」)? – 2014-11-04 15:07:01

回答

2

我建議在計算中使用完全精確度,並使用自定義數字格式調整顯示的小數位數,同時保留底層數值的精度以供進一步計算。

linear conversion

選擇單元格,然後從列表中向下左側挖掘Ctrl+1然後選擇定製並提供一個格式掩碼類型:。

在B8的公式爲=CONVERT($B$2,$C$2,"m")*POWER(10,3)(點頭@XOR LX)和格式化鍵入自定義數字:是[>=100]0 \m\m;0.000 \m\m

B9中的公式是=CONVERT($B$2,$C$2,"m")自定義數字格式類型:是[>=100]0 \m;0.000 \m

C2中的值來自數據►數據驗證列表►允許:列表►來源:= $ E $ 2:$ E $ 9。

我已經完成了B8 & B9。其餘的應該很簡單。如果您需要格式化掩碼或其他問題的幫助,請回複評論。有關更多信息,請參閱Create a Custom Number Format

+1

+1爲酷數字格式。但我不知道這是針對有意義的數字標準。 '= CONVERT(1.432,「in」,「mm」)'使用該格式返回「36.373 mm」,該格式有5位有效數字。 – 2014-11-04 15:39:47

+1

@RickHitchcock - 你當然是對的。我不會重視那句*顯示3位有效數字*。 CNF僅限於兩個範圍條件和一個回退,所以可以做的最好的是'[> = 100] 0 \ m \ m; [> = 10] 0.0 \ m \ m; 0.00#\ m \ m'。如果絕對必要,條件格式可以調整爲額外的值範圍。 – Jeeped 2014-11-04 15:53:31

0

這可能讓你去:

=IF(CONVERT(A2,"in","mm")>=100, 
    ROUND(CONVERT(A2,"in","mm"),0), 
    ROUND(CONVERT(A2,"in","mm"),2-INT(LOG10(CONVERT(A2,"in","mm")))) 
) 

這可以摺疊到:

=ROUND(CONVERT(A2,"in","mm"), 
    (CONVERT(A2,"in","mm")<100)*(2-INT(LOG10(CONVERT(A2,"in","mm")))) 
) 

輸出

enter image description here

數2爲您提供了3個顯著數字。更改爲3爲4有效數字等