2015-04-27 82 views
3

我必須根據其值將單元格的格式更改爲歐元。如果它在1和-1之間,那麼它將有三位小數。否則,它將只有一個。此外,歐元符號需要在數字之前。我很難讓歐元符號顯示出來,並且在小數點後面顯示零點,例如23,我希望顯示爲23.0或.9,這應該變爲.900。基於.Value更改.NumberFormat

+0

您是否在尋找對工作簿解決方案VBA液或? – FairlyLegit

+0

我一直在嘗試VBA,但任何一個都會。這是我現在的代碼ActiveCell.Select If ActiveCell.Value <1 and ActiveCell.Value> -1 Then Euros = Format(ActiveCell.Value,「0.000」) Else:Euros = Format(ActiveCell.Value,「 0.0「) End If ActiveCell.FormulaR1C1 =」€「&Euros End Sub – Evan

回答

1

嘗試(與該小區的期望的行和列替換CellRow和CellColumn):

If Cells(CellRow,CellColumn).Value >= -1 and Cells(CellRow,CellColumn).Value <= 1 then 
    Cells(CellRow,CellColumn).NumberFormat = "[$€-2] #,##0.000" 
Else 
    Cells(CellRow,CellColumn).NumberFormat = "[$€-2] #,##0.0" 
End If 
+0

我剛剛使用了NumberFormat部分而不是常規格式,它工作正常。謝謝! – Evan

0

使用標準條件在一個複雜的自定義數字格式。

Selection.NumberFormat = "[>1]€ 0.0;[<-1]€ -0.0;€ 0.000" 
0

1)突出顯示要格式化的單元格。對於這個例子,我將假設它只是[A1]。

2)轉到條件格式>新規則>使用公式確定要格式化的單元格。

3)在編輯欄中輸入=AND(A1<=1,A1>=-1)

4)在格式設置中,轉到號碼,選擇自定義並輸入您的格式。鍵入「ALT + 0128」,然後「0.000」。該 「ALT + 0128」 是歐元符號

see example here

5)點擊沒關係返回到工作表的ASCII碼。如果單元格仍然突出顯示,請使用與上述相同類型的格式將數字格式更改爲自定義; 「ALT + 0128」和「0.0」。

6)完成!

0

自定義格式:

[<-1]$#,##0.0;[<1]$#,##0.000;$#,##0.0 

變化國際Options.- Excel中的貨幣符號將使用無論是在控制面板上設置