2012-12-07 44 views
2

我想要格式化现有Excel文件(xls)单元格,使得列中的单元格值仅在小数点后显示两位数字。以编程方式将格式应用于Excel文件

因此,而不是0.090919729581319146%,我想显示0.09%

我需要在多个文档中做到这一点,所以我需要一些可重复的方法来应用转换。我正在考虑一个宏 - 并在Excel 2010中使用集成宏记录器进行尝试,但不幸的是无法使其工作。

我只需要从C3 - > C5000格式化一个范围。

回答

1

我发现网络上的东西。看看这个代码。它做什么,我说的是:

Sub NurZumUeben() 
With Range("C2:C5000") 
    .Replace What:="%", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows 
     Range ("K1") = 100 
     Range ("K1").Copy 
    .PasteSpecial Paste :=xlPasteAll, Operation:= xlDivide 
    .NumberFormat = "0.00%" 
     Range("K1").Clear 
End With 
End Sub 

enter image description here

+0

请不要将*图像*的代码发布为解决方案。他们无法复制以用于测试或更正(或者将其他人用作解决方案)。如果您想发布代码,请将其作为实际代码发布。谢谢。 –

+0

如果有人的代码,它会很有礼貌地承认谁的。 – pnuts

-1

这是一个基本的VBA脚本,让你开始:

Sub ColFormatToTwoDigits() 
    Columns("A:A").Select 
    Selection.NumberFormat = "0.00%" 
End Sub 
+0

谢谢老兄!但如果我开始这个宏,我得到了一个runtim errorcode'91'。在德语中,“Objektvariable nicht festgelegt”的意思就像Objekt没有定义的那样! –

+0

对不起。我的错。 :-(固定。 –

+0

看看这里 - > http://www.civelek.com/space-anomaly.com/report-28.xlsb –

相关问题