2015-12-23 235 views
3

我从外部源十进制转换成百分比

enter image description here

我需要的是把所有高亮显示的数据的百分比,我不能失去逗号之后的部分接收像下面的数据。 这里是我到目前为止已经试过:

For Each actCell In shRecipiente.ListObjects("tblRecipiente").ListColumns("All-In Rate").DataBodyRange 
    If Not (Right(actCell.NumberFormat, 1) = "%") Then 
     actCell.Value = Format(actCell, "#.####%") 
    End If 
Next actCell 

但我发现了例如396,83%,而不是3,9683%

回答

1

变化

actCell.value = Format(actCell, "#.####%") 

actCell.value = Format(actCell/100, "#.####%") 

但是,如果没有真正的百分比值,你NEET将其更改为

actCell.value = Format(actCell, "#.####""%""") 

,或者如果你不能改变的值尝试

actCell.Offset.NumberFormat = "#.####""%""" 
+0

谢谢你的答案,但它仍然不工作,现在我得到39683%,而不是3,9683% –

+0

你有一个来源呢?也许错误是... –

+0

不幸的是,我不能改变来源 –

0

除以100格式的数字为百分数。

=A1/100

编辑 - 检查被格式化为一个百分比,这是不使用: =IF(CELL("format",A1)="P0",A1,A1/100) - P0表示百分比格式。 该公式将显示所有没有百分比的数字,因此150%将显示为1.5,与150相同。
然后,这只是将整个列格式化为百分比的情况。