我有一个Excel工作簿,每张工作表上都有许多数据透视表。我正在使用数据透视表在另一张表上显示我的分析表中的许多"计数"。例如,如果属性A各有三个级别,我将制作A1、A2和A3中有多少行的表格。
我还需要创建单独的非透视表,这些表引用原始透视表,以填充其中缺少的值。因此,从上面的例子来看,如果当前没有具有属性A2的行,则该行将不存在于透视表中。然而,稍后当我得到更新的数据表时,我可以预期会有属性为A2的行。我想在我的第二个表中创建一个引用,当数据透视表中没有A2的行,但当所有内容都被刷新时,它可以计算为0。
当我尝试使用GETPIVOTDATA引用行时,我得到#REF!如果数据透视表中不存在该单元格。从本质上讲,我只是很难弄清楚如何说:
if (GETPIVOTDATA equals #REF!)
cell equals 0
else
cell equals GETPIVOTDATA
可能是=IFERROR(*your formula*,0)
。换句话说,如果您的公式返回错误显示0
。
IFERROR检测#N/A
、#VALUE!
、#REF!
、#DIV/0!
、#NUM!
、#NAME?
或#NULL!
,但如果来自PT,则可能是可以接受的,尽管不是您所要求的。
您可以通过=ISREF(...)
或=ERROR.TYPE(...)
(对于ref类型错误,应等于4)公式进行测试。