从Excel更新PowerPoint,小数点后3位

时间:2015-09-29 08:38:00

标签: vba excel-vba powerpoint powerpoint-vba excel

我正在创建一个VBA代码,用于修改shapename处的特定shapeslide并将其值更新为shapetext。这些是在Excel中从单元格J2,K2,L2开始预定义的。 Excel中shapetext的值是函数=ROUND(A2+B2,3),因为我希望PowerPoint更新为3个小数点。在Excel中,shapetext的这些值正确显示,例如“2,330”(我使用瑞典语Office包,其中“,”是小数点),但是当我更新PowerPoint中的相应值时得到值“2,33” - 省略“0”。如果数字中没有“结束”零,则PowerPoint会正确更新,例如Excel中的“0,348”在PowerPoint中为“0,348”。

Set pppres = ppapp.ActivePresentation
r = 2
Do
    shapeslide = Cells(r, 10)
    shapename = Cells(r, 11)
    shapetext = Cells(r, 12)
    pppres.Slides(shapeslide).Shapes(shapename).TextEffect.Text = shapetext
    r = r + 1
Loop Until Cells(r, 10) = ""

是否可以“强制”PowerPoint显示带有3位小数的值,即使它是结束零点?

提前致谢

1 个答案:

答案 0 :(得分:1)

尝试此操作(未经测试

pppres.Slides(shapeslide).Shapes(shapename).TextEffect.Text = _
Format(val(trim(shapetext)),"0.000")