将空间字符视为数据透视表的空字段

时间:2014-07-30 22:30:14

标签: excel excel-vba count pivot-table string vba

我正在使用VBA动态创建数据透视表。我想从源数据中计算非零条目的数量,但是我的源数据不是空白单元格,而是空格字符(“”)。

我认为发生的事情是数据透视表将这些空格识别为非空单元格,将它们计为非零条目。结果是计数返回源数据中的条目总数。有谁知道如何避免这种情况?

我的解决方案是创建一个虚拟列,其行中的1对应于非零条目,行中的0对应于其中包含空格字符的条目。然后我可以将我的虚拟列加以得到非零条目的计数。这个问题是我的源数据集很大,所以计算时间太长。

我希望有可能告诉数据透视表将空格字符视为空白字段。我希望我可以将空格更改为空字符串,但这需要花费很长时间才能完成,我无法以其他格式获取数据集(空格将始终存在,除非我煞费苦心地等待查找/替换以替换所有这些。)

有人能想到解决方案吗?

1 个答案:

答案 0 :(得分:0)

我无法将其简化为评论!:

假设ColumnsA:B中显示的那种数据(其中B2,B4,B6:B8和B10用空格填充),那么PT 可能看起来有点像ColumnsD:E中所示。 ColumnF是添加到Σ值“B的计数”的额外列(其中第二个实例是自动添加2)。

在图像中不清楚,但这里的字段由“数字计数”而不是“计数”汇总:

SO25048037 example

这可能与所需要的完全不同,但我希望至少可以帮助解决问题。