在表1中,值为45
,因此我想在表格RESULTADO中采用以下格式:0045
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"))
答案 0 :(得分:1)
你可以用两(2)种方式做到这一点:
首先设置数字格式
With Worksheets("RESULTADO").Range("B" & row_counter)
.NumberFormat = "@"
.Value = Format(Worksheets(1).Range("B" & row_counter).Value, "0000")
End With
使用'
撇号
Worksheets("RESULTADO").Range("B" & row_counter) = "'" & _
Format(Worksheets(1).Range("B" & row_counter).Value, "0000")
答案 1 :(得分:0)
这不起作用,因为在第一种情况下,您尝试将数字n格式化为00n,始终返回n,在第二种情况下,您执行完全相同的操作,然后将结果转换为字符串。 您必须先将n转换为字符串。所以在你的情况下:
Worksheets("RESULTADO").Range("B" & row_counter) = Format(CStr(Worksheets(1).Range("B" & row_counter).Value), "0000")