将数据透视表中的值复制到特定单元格中的表格
我有一些数据显示在数据透视表中,我从当前的数据透视表中复制并粘贴到当前date的另一个表中,每天完成这个过程需要大约1个小时的操作数,我正在尝试做一个macros观的,这将帮助我在更短的时间内完成这个过程
这是我在其中复制数据的数据透视表
这里是我粘贴的地方(在这张表中我用它来创build一些图)
两张表都由许多不同的操作数组成,你可以想象这是非常乏味的。
任何帮助或想法,可以帮助我解决这个赞赏,我愿意尝试一些其他的select,如fomulas,VBA (首选) ,甚至closedxml的C#。
我不知道如果我解释我的自我? 这是我的逻辑。
- 查找操作号码
- 复制“Sx”
- 在其他表格中查看相同的操作编号。
- 在相应的date粘贴值。
- find与下一个“Sx”相同的操作号
。
。 - 结束
现在我只关注Operation1,因为在Operation2中我使用另外一张表单来做同样的事情。 (可能会使用与Operation1相同的代码)。
为了澄清我并不是要求某人给我解决scheme(虽然这是表示赞赏),但任何指南都是有帮助的。
你不需要VBA来做到这一点。 使用GETPIVOTDATA
。
考虑下面的复制数据:
在上面的示例中,我将一些数据复制到了屏幕截图中,并将它们放在同一张表中,并将其放在下面。 然后我使用GETPIVOTDATA
。 我觉得我需要告诉你如何完成,即使在我发布的链接中有很好的解释。
所以我们使用这个公式:
= GETPIVOTDATA(“总和”和$ I18,$ I $ 2,“Date”,J $ 17,“Opt”,$ I $ 16,“Id”,$ J $ 16)
在Cell J14
。 请注意,我们使用的是实际的date,而不是在目标表上使用第1天,第2天..等 。 为什么? 因为我们需要在我们的GETPIVOTDATA
公式中。 然后将公式复制到其余的单元格中。
结果:
现在,如果GETPIVOTDATA
找不到与您提供的条件相匹配的任何内容,那么您可能需要使用IFERROR
语句来合并error handling。
最终公式:
= IFERROR(GETPIVOTDATA(“Sum of”&$ I18,$ I $ 2,“Date”,J $ 17,“Opt”,$ I $ 16,“Id”,$ J $ 16)
虽然你更喜欢VBA,但是我认为比你内置的Excelfunction更好的方法更适合你的情况。