2015-04-06 92 views
1

在表1的值是45所以我在片RESULTADO想這樣的格式:0045VBA的Excel格式的數字爲字符串

Worksheets("RESULTADO").Range("B" & row_counter) = Format(Worksheets(1).Range("B" & row_counter).Value, "0000") 

爲什麼這不起作用?

我試過也是這個,但是沒有它的工作原理:

Worksheets("RESULTADO").Range("B" & row_counter) = CStr(Format(Worksheets(1).Range("B" & row_counter).Value, "0000")) 

回答

1

你可以做,在兩(2)方法:

  1. 設置數字格式第一

    With Worksheets("RESULTADO").Range("B" & row_counter) 
        .NumberFormat = "@" 
        .Value = Format(Worksheets(1).Range("B" & row_counter).Value, "0000") 
    End With 
    
  2. 使用'撇號

    Worksheets("RESULTADO").Range("B" & row_counter) = "'" & _ 
        Format(Worksheets(1).Range("B" & row_counter).Value, "0000") 
    
0

這並不在你試圖格式化數n,以00N總是至極第一種情況下,因爲工作回到N,在第二種情況下,你做的完全一樣的,那麼你transtype的結果一個字符串。 您必須先將n轉換爲字符串。所以在你的情況下:

Worksheets("RESULTADO").Range("B" & row_counter) = Format(CStr(Worksheets(1).Range("B" & row_counter).Value), "0000")