【问题标题】:How can I change the value of the cells in a pivot table?如何更改数据透视表中单元格的值?
【发布时间】:2017-09-18 17:39:41
【问题描述】:

我有带有数字的 Excel 表格。大多数数字格式为带有符号 E 的科学数字(例如:10E-8、1E-6、0.235、234E-10...)。 我想格式化它们,例如,使用 4.01E-10 ,10E-7,235E-3,0.234E-9, 1.61E-09 . 所以我认为我应该操纵每个单元格中的每个数字。我该怎么做?
我应该在数据源中还是在数据透视表中引用它们

到目前为止:

Dim PvtRng As Range, C As Range

Set PvtRng = pvt.DataBodyRange ' <-- set the Pivot Data range

For Each C In PvtRng ' loop cell by cell inside the Pivot-Table's DataBodyRange
    C.NumberFormat = " 0.00#" & "E-3"
Next C

请建议如何使用 vba 执行此操作。 任何帮助将不胜感激!

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    您可以使用PvtRng.NumberFormat = "0.00E+00" 将单元格置于科学计数法中。不需要循环,除非您出于某种原因试图在不同的单元格上施加不同的格式,在这种情况下,您需要制定(并指定)该决定的逻辑。

    【讨论】:

    • pvtrng.numberformat ="0.00E+00" 使数字仅作为科学数字格式,它不控制“E+00”。有时它是 E-07,有时是 E-08 .是的,我试图在不同的单元格上施加不同的格式。例如:我有数字应该在一定范围内。
    • @ofir 我认为您想要的不在格式化范围内。科学格式不能这样调整。
    • 100E-9 是一个无效的科学记数法,如果你在任何专业水平上使用它,那么你会让自己看起来很愚蠢
    猜你喜欢
    • 2018-02-18
    • 1970-01-01
    • 2017-07-13
    • 2016-09-25
    • 1970-01-01
    • 2013-06-17
    • 2013-09-17
    • 2021-08-22
    • 2022-07-04
    相关资源
    最近更新 更多