【发布时间】:2016-08-30 11:59:24
【问题描述】:
我需要能够确定两个演示文稿中的(某些)幻灯片是否相同。基本上每个月都会更新一次主演示文稿,并将以前的版本存档。幻灯片顺序保持不变,只是这些幻灯片的内容可能发生了变化。问题是……
deck1.Slides(i)=deck2.Slides(i)
...不起作用,并且...
deck1.Slides(i).SlideID=deck2.Slides(i).SlideID
...即使幻灯片内容已更改,也会返回相同的值。
我想知道是否可以对幻灯片进行校验和,但我还没有在网上找到任何可以做到这一点的东西——我在这里遇到的 VBA 校验和例程仅适用于文本字符串。是否可以对幻灯片或对象进行校验和,还是我遗漏了一些明显的东西?
【问题讨论】:
-
我可能弄错了,但是根据我对 PowerPoint 自动化的一点经验,我希望您必须循环遍历要比较的幻灯片的内容(我猜是 .形状集合将是相关的)
-
定义“相同”。如果 a) 文本相同,但文本颜色已更改,b) 文本框已移动,c) 已添加或调整图像大小……等等,它们是否相同?您将不得不编写代码来一一检查所有参数。 PowerPoint 不是为此设计的。它是一个演示工具,而不是一个报告程序。如果你用它来报道,那笑话就在你身上......
-
欢迎来到使用 PowerPoint 进行此类事情的金融服务行业!相同,我的意思是完全一样,所以文本颜色的变化,形状的移动都会被这个捕捉到——如果可能的话……
-
不是解决方案,但 PowerPoint 支持 Merge 和 MergeWithBaseline,可以在比较两个套牌时使用。然后,这将使用 Review 窗格中的演示文稿之间的更改填充 UI。
-
另一种可能的方法:将两张幻灯片导出为 PNG 文件并比较 PNG 上的校验和。
标签: vba powerpoint checksum