【问题标题】:Change Path to Picture Links in Excel在 Excel 中更改图片链接的路径
【发布时间】:2017-06-18 21:54:39
【问题描述】:

我已使用插入图片 -> 选择图片位置 -> 文件链接将大量链接图片手动粘贴到 2010 Excel 电子表格中。这些图片是报告的一部分。我每季度使用 R 更新图片,我的报告会自动更新。完美。

我现在需要更改保存地块的目录,并且需要更新链接。由于其中大约有 200 个(这是一份大报告),我想在 VBA 中执行此操作。虽然我可以循环浏览图片(ActiveSheet.Pictures),但我似乎找不到链接/地址。知道如何查看底层文件位置,以便我可以更改它 - 引用必须存储在某个地方(注意 - 这些似乎没有存储为超链接)。

【问题讨论】:

  • 虽然我不知道你的问题的答案,但我想知道将所有文件复制过来是否更容易(并可能在此之前将旧图片备份到其他地方)。

标签: vba excel-2010


【解决方案1】:

知道如何查看底层文件位置,以便我可以更改它 - 引用必须存储在某个地方

  1. 创建一个新文件夹
  2. 粘贴 .xlsx 或 .xlsm excel 文件的副本
  3. 使用 zip 工具解压缩文件(我使用的是 7-Zip)
  4. 删除 .xlsx 或 .xlsm 文件(可选)
  5. 现在我们将原始文件的所有组成部分作为纯文本 xml 文件和文件夹
  6. 在文件夹 xl\drawings\ _rels 中有名为 drawing2.xml.rels、drawing3.xml.rels、...的文件。

好像每个文件都对应一张sheet,并以这种格式存储图片的路径:

Target="file:///C:\Users\myusername\Documents\MyImageFolder\My%20Image%20Name.png"

  1. 使用文本编辑器更改路径
  2. 将文件夹的所有内容压缩为 .zip
  3. 将扩展名改为原来的.xlsx或.xlsm

这些步骤可以使用 VBA、AutoIt 等自动执行,这里有一些参考资料:

【讨论】:

    【解决方案2】:

    在这种情况下,Excel 使用公式栏作为链接,就像它在两个不同工作表中的范围之间链接一样。当我选择链接图片时,公式栏中会填充以下公式:

    =[TrialWB.xlsm]Sheet1!$C$3:$E$6
    

    您可以使用下面的代码并插入图片的特定名称来访问形状的公式:

    ActiveSheet.Pictures("Picture Name").Formula = "=[TrialWB.xlsm]Sheet1!$C$4:$E$6"
    

    在更新链接时,您必须更改公式中的文件路径。这可能看起来像:

    ActiveSheet.Pictures("Picture Name").Formula = "='C:\Reports2015\[TrialWB.xlsm]Sheet1'!$C$4:$E$6"
    

    改成

    ActiveSheet.Pictures("Picture Name").Formula = "='C:\Reports2016\[TrialWB.xlsm]Sheet1'!$C$4:$E$6"
    

    这个问题可能对访问公式有一些进一步的帮助: Excel: create image from cell range

    这是一个有用的 Microsoft 公式文件路径编辑页面:https://support.office.com/en-us/article/Create-an-external-reference-link-to-a-cell-range-in-another-workbook-c98d1803-dd75-4668-ac6a-d7cca2a9b95f

    【讨论】:

    • 这不是将 Excel 单元格显示为电子表格中的图像。它是关于链接到电子表格的外部图像文件。这些不会在公式栏中显示任何内容。
    • 感谢您的回答,但正如 teylyn 指出的那样,这不起作用。公式栏是空白的,而且 VBA 抱怨我无法设置图片类的公式属性。还有其他想法吗?手动进行是一种选择,但它非常不令人满意 - 这些链接必须存储在某个地方!
    • 图片是否会发生变化,或者只是将一堆图片放入电子表格中的一种方式?据我所知,根据微软的说法,“链接图片”是指来自另一个工作表的数据图片,这导致了我的困惑
    • @N1DRR 尝试删除其中一张图片(或将其移至其他文件)并查看它是否在您的 Excel 报告中消失。我无法让插入的图片动态链接到文件。
    • 如果我删除或移动其中一个图片文件,我会得到一个红色 X 并显示消息“链接的图像无法显示。文件可能已被移动、重命名或删除。验证链接指向正确的文件和位置”。但我不知道如何获取链接。我一直在做的是保持名称不变,但每季度更改图片,当我重新打开电子表格时,这反过来会更新电子表格。这些图片是 .PNG 文件,就上下文而言,它们是一张地图,显示了本季度各地区的销售额变化情况。想法?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-03
    • 2016-10-22
    • 1970-01-01
    • 2013-01-25
    • 2013-07-03
    相关资源
    最近更新 更多