如何使链接的Word和Excel文档可移植?

时间:2019-05-06 18:53:13

标签: excel vba ms-word

我们有一些Word中的报表模板文档,这些文档模板具有从Excel到Word的各种OLE链接对象链接到模板excel文档。

由于OLE使用绝对路径而不是相对路径,因此将两个文档粘贴到另一个位置(甚至移动它们)的复制会中断OLE链接。

那么,便利将文档移动到另一个位置并移动Word模板并将其链接到新位置的另一个Excel文档的最佳方法是什么?

我搜索了许多站点,并找到了一些技术人员解决方案:

  1. http://www.msofficeforums.com/word/38722-word-fields-relative-paths-external-files.html

  2. https://answers.microsoft.com/en-us/msoffice/forum/all/making-excel-links-in-word-portable-ie-relative/8f67c68e-6406-4ef2-9b97-4d96c43dcb2c

但对于非技术人员来说,它必须足够容易使用。

我希望能够将两个文档(Word模板和链接的Excel模板)复制并粘贴到新位置,并使它们的工作方式与原始位置相同。

我还希望能够仅将Word模板复制到新位置并将其链接到该新位置的Excel模板。

2 个答案:

答案 0 :(得分:1)

我最后写了一个解决方案,我很难找到答案,所以我想分享最终对我有用的东西。

代码在word文档的工作目录中查找,找到第一个excel文档(我的工作中每个文件夹只有1个excel文件,因此此设置对我有用),并更改了所有OLE对象的来源word文档以匹配excel文档,从而可以创建word / excel模板对并将其移动到其他位置。

*注意:我已经将Windows的特定对象/功能用于I / O,即MyFile,MyFSO,MyFolder ...等,但是我认为打造I / O平台并不困难不可知的。

**注意:我还没有真正添加任何错误检查,因为它是一个快速且肮脏的宏,在内部用于促进可移植性,而且我之前从未使用过vba,因此垃圾清理等只是抛出了一种错误在那儿,如果有一种方法可以重构并清理所有内容,请告诉我。

SELECT NAME+CAST(RANK() OVER(ORDER BY NAME) AS VARCHAR) AS NEW_NAME 
FROM SYS.TABLES

通过允许我将单词和excel文件一起复制粘贴到一个新位置并运行宏,或者允许我仅复制并粘贴单词文件并运行宏以将其链接到新位置中的excel文档。

**我还要注意,我只需要查看正文和页眉/页脚故事以了解我们使用的链接,因此此代码虽然不那么健壮,但我认为也不会如此很难再添加一两个循环来掩盖所有缺失的故事

干杯!

答案 1 :(得分:0)

如果您仍在寻找在Excel和Word之间创建可移植链接的方法,那么我们的Excel-to-Word文档自动化加载项可能会有所帮助。与通过Office进行本机链接不同,您可以:重命名文件,复制/粘贴和重新组织内容,共享链接的文件等。同一Excel文档可以更新多个目标Word和/或PowerPoint报告模板。您只需设置一次链接,即可多次更新它们。希望对您有所帮助,您可以在https://analysisplace.com/Document-Automation

中找到更多信息