将特定单元格中的值从数据透视表 table 复制到 sheet
Copy values from pivot table to sheet in specific cell
我有一些数据显示在数据透视表 table 中,从该数据透视表 table 我目前将它们复制并粘贴到另一个 table 中与相应的当天,所以许多操作数字每天大约需要 1 小时才能完成此过程,我正在尝试制作一个宏,以帮助我在更短的时间内完成此过程
这是我复制数据的枢轴table
这是我粘贴它的地方(在这个 table 我用它来创建一些图表)
两个table都由许多不同数量的操作组成,你可以想象这是非常繁琐的。
感谢任何可以帮助我解决此问题的帮助或想法,我愿意尝试其他一些替代方法,例如公式,vba(首选),甚至c# 的 closedxml。
我不知道我是不是在解释我自己?
这是我的逻辑。
- 寻找操作编号
- 复制 "Sx"
的总和
- 在其他 sheet 中查找相同的操作编号。
- 粘贴相应日期的值。
- 寻找与下一个相同的操作编号"Sx"
.
.
- 结束
现在我只关注 Operation1,因为在 Operation2 中我使用另一个 sheet 做同样的事情。 (可能会使用与 Operation1 相同的代码)。
澄清一下,我并不是要别人给我解决方案(虽然我很感激),但任何关于此的指南都会有所帮助。
您不需要 VBA 来执行此操作。使用 GETPIVOTDATA
.
考虑以下复制数据:
在上面的例子中,我在你的屏幕截图中复制了你的一些数据,从中做了一个轴心,把它放在同一个 sheet 中,还把你需要填充的 table在它下面。然后我使用 GETPIVOTDATA
。我觉得我需要向您展示它是如何完成的,即使它在我发布的 link 中有很好的解释。
所以我们使用这个公式:
=GETPIVOTDATA("Sum of "&$I18,$I,"Date",J,"Opt",$I,"Id",$J)
在 Cell J14
中。请注意,我们使用的是实际日期,而不是您目的地 table 上的 Day 1, Day2.. etc。为什么?因为我们在 GETPIVOTDATA
公式中需要它。然后将公式复制到其余单元格。
结果:
现在,GETPIVOTDATA
如果找不到任何符合您提供的条件的内容,则会出错,因此您可能希望使用 IFERROR
语句合并错误处理。
最终公式:
=IFERROR(GETPIVOTDATA("Sum of "&$I18,$I,"Date",J,"Opt",$I,"Id",$J),0)
虽然您更喜欢 VBA,但我认为没有比内置 Excel 功能更好的方法更适合您的情况了table。
我有一些数据显示在数据透视表 table 中,从该数据透视表 table 我目前将它们复制并粘贴到另一个 table 中与相应的当天,所以许多操作数字每天大约需要 1 小时才能完成此过程,我正在尝试制作一个宏,以帮助我在更短的时间内完成此过程
这是我复制数据的枢轴table
这是我粘贴它的地方(在这个 table 我用它来创建一些图表)
两个table都由许多不同数量的操作组成,你可以想象这是非常繁琐的。
感谢任何可以帮助我解决此问题的帮助或想法,我愿意尝试其他一些替代方法,例如公式,vba(首选),甚至c# 的 closedxml。
我不知道我是不是在解释我自己? 这是我的逻辑。
- 寻找操作编号
- 复制 "Sx" 的总和
- 在其他 sheet 中查找相同的操作编号。
- 粘贴相应日期的值。
- 寻找与下一个相同的操作编号"Sx"
.
. - 结束
现在我只关注 Operation1,因为在 Operation2 中我使用另一个 sheet 做同样的事情。 (可能会使用与 Operation1 相同的代码)。
澄清一下,我并不是要别人给我解决方案(虽然我很感激),但任何关于此的指南都会有所帮助。
您不需要 VBA 来执行此操作。使用 GETPIVOTDATA
.
考虑以下复制数据:
在上面的例子中,我在你的屏幕截图中复制了你的一些数据,从中做了一个轴心,把它放在同一个 sheet 中,还把你需要填充的 table在它下面。然后我使用 GETPIVOTDATA
。我觉得我需要向您展示它是如何完成的,即使它在我发布的 link 中有很好的解释。
所以我们使用这个公式:
=GETPIVOTDATA("Sum of "&$I18,$I,"Date",J,"Opt",$I,"Id",$J)
在 Cell J14
中。请注意,我们使用的是实际日期,而不是您目的地 table 上的 Day 1, Day2.. etc。为什么?因为我们在 GETPIVOTDATA
公式中需要它。然后将公式复制到其余单元格。
结果:
现在,GETPIVOTDATA
如果找不到任何符合您提供的条件的内容,则会出错,因此您可能希望使用 IFERROR
语句合并错误处理。
最终公式:
=IFERROR(GETPIVOTDATA("Sum of "&$I18,$I,"Date",J,"Opt",$I,"Id",$J),0)
虽然您更喜欢 VBA,但我认为没有比内置 Excel 功能更好的方法更适合您的情况了table。