我想擁有完整的數字,如:14'119'838
- 它也僅僅是0。如果我試試這個:的NumberFormat 0小數,但千位分隔符「'」
Range("C3:H14").NumberFormat = "0"
撇號千分隔符消失。如果我將NumberFormat設置爲「常規」,則不存在千位分隔符....我怎樣才能得到0小數位,但是使用美麗的千位分隔符?
感謝
我想擁有完整的數字,如:14'119'838
- 它也僅僅是0。如果我試試這個:的NumberFormat 0小數,但千位分隔符「'」
Range("C3:H14").NumberFormat = "0"
撇號千分隔符消失。如果我將NumberFormat設置爲「常規」,則不存在千位分隔符....我怎樣才能得到0小數位,但是使用美麗的千位分隔符?
感謝
你有你的號碼Fromat改變這樣的:如果你使用這個Range("C3:H14").NumberFormat = "#,##0"
公式,你會得到
Range("C3:H14").NumberFormat = "#'###'##0"
英文數字格式。 由於您要求「'」Seperartor,您將需要「#'###'## 0」數字格式以獲得瑞士數字格式。
代碼由數
For Each Rng In Range("a1:B5")
Select Case Len(Rng.Value) 'hier Spalte A
Case Is < 4: Rng.NumberFormat = "##0"
Case 4 To 6: Rng.NumberFormat = "#'##0"
Case 7 To 11: Rng.NumberFormat = "#'###'##0"
End Select
Next
韋爾普的長度改變NumberFormat的,對不起,我來晚了,這裏是另一種解決方案:
Option Explicit
Sub again()
Dim rng As Range
set rng = ThisWorkbook.Worksheets("Sheet1").Range("C3:H14")
Application.UseSystemSeparators = False
Application.ThousandsSeparator = "'"
rng.NumberFormat = "#,##0"
End Sub
如果您有其他數你不想用「'分隔的格式它不會這樣做,因爲它用」'「替換默認的Excel分隔符。
這導致了2個問題:1.幾個單元格爲0,所以在改變格式之後,這將是「0」。問題是這忽略了第二個或百萬個分隔符。例如1234'567不是很漂亮 – dv3
@ dv3然後將它改爲「#」###'## 0「 – Moosli
@Moosli的結果是'343'424 343424.我認爲dv3需要的是擺脫多餘的」 '「在一個數字的開頭。我認爲可以用'select case'來完成,但爲此你需要運行一個範圍內的每個單元格,並且肯定會降低性能。 – AntiDrondert