请耐心听我解释我的问题,希望解释得简洁。我有一个用户表单,除其他功能外,它允许用户将图片插入项目中的一组子集 [即幻灯片 3-29 和 30-54]。我想创建一个“清除”子程序,除其他功能外,它将从上次保存后的幻灯片中删除所有插入的图片。我的想法是,在每个“插入”图片过程中,都会创建一个公共二维变量,其中包含幻灯片编号和 shape.ID 对。清除程序将简单地查看这些变量,转到每张幻灯片并删除图片。(每次保存时,这些变量都会被删除。
我的逻辑合理吗?我应该走不同的路线吗?我从未使用过多维变量,如何指定或读取每个变量对的值来解析它们?
答案1
当您添加每个图像时,获取其形状的引用并向其添加标签,类似于(假设引用 oSh 中的新图片):
oSh.Tags.Add "Added", dTime '其中 dTime 是一个设置为上次保存日期的变量 '您可以执行 ActivePresentation.Tags.Add "LastSave",无论怎样记录
要根据需要删除形状,请循环浏览每张幻灯片上的每个形状,然后查看
oSh.Tags("Added") 返回添加演示文稿时标记的 dTime 值。找到符合条件的演示文稿后,将其删除。
确保向后浏览每张幻灯片上的形状,否则您会得到奇怪的结果。
在实现此功能之前,您需要弄清楚如何记录上次保存的日期(和时间?)。您解决了吗?