书签特殊粘贴,Excel查看相同的文件夹

时间:2013-04-04 09:43:36

标签: excel excel-vba ms-word excel-formula bookmarks vba

我有一个word doc和excel doc,我用word创建了书签,特别粘贴到excel中......这些书签的工作时间很长,因为文件保留在ORIGINAL位置( example- C: \ Documents and Settings \ My Documents \ New Form

但是

我需要将文档移动到不同的客户端位置(示例 - C:\ Documents and Settings \ My Documents \ client1

在excel中,单元格信息如下所示;

=Word.Document.8|'C:\Documents and Settings\My Documents\NewForm\TestFactFind.doc'!'!Title'

我可以放任何东西,以便excel文件会查看当前文件夹以查找word文档而不是设置位置吗?

2 个答案:

答案 0 :(得分:1)

非VBA方法

是的,Excel公式可以从包含文件的公式所在的同一目录中的文件中获取值。您必须使用INDIRECT()。不过要小心谨慎。 INDIRECT仅在目标工作簿打开时才有效。

这是一个例子

假设Cell B1中的C:\Book1.xlsx中的公式为

='C:\Sample\[Sample.xls]Sheet1'!$A$1

然后将此公式放在Cell C1中进行测试

=INDIRECT("'" & LEFT(CELL("filename",A1),FIND("[",CELL("filename",$A$1))-1)&"[Sample.xls]Sheet1'!$A$1")

<强>截图

enter image description here

答案 1 :(得分:0)

我不知道Word书签,但我认为它们与Excel超链接相同(?)

这可能与Word相关,也可能不相关,但在excel中,您可以使用超链接公式创建指向任何其他文档的链接。如果您使用当前目录(文件夹)作为根目录,它将从那里开始。

".\" is the current folder
"..\" is the parent folder that the current folder is in

因此,假设您有一个excel表,其中包含20个Word文档的链接,这些文档存储在名为REPORTS的子文件夹中(excel to word与您提议的相反,但反过来可能相同?)。 每个excel单元格中的链接将是:

=HYPERLINK(".\REPORTS\JAN.DOC","January report")
=HYPERLINK(".\REPORTS\FEB.DOC","February report")
=HYPERLINK(".\REPORTS\MAR.DOC","March report")
etc...

我经常使用的一个功能是将文件名或部分文件名列在链接的excel列parellel中,并在超链接文件名中使用该单元格。采用以下示例,并假设它是范围A1:B4(第1行是列标题“月号”和“链接到报告”)。 在这个例子中,我将我的单词文件命名为MONTHxx.DOC,xx是月份编号。

MONTH NUMBER         LINK TO REPORT
01                   =HYPERLINK(".\REPORTS\MONTH" & A2 & ".DOC","Report for month " & A2)
02                   =HYPERLINK(".\REPORTS\MONTH" & A3 & ".DOC","Report for month " & A3)
03                   =HYPERLINK(".\REPORTS\MONTH" & A4 & ".DOC","Report for month " & A4)
etc

将单元格放在超链接的第二部分的末尾,将月份编号也放在用户要查看的链接名称中。当然,你可以使用那里的任何一个单元来命名。

这种方法的优点在于,如果你有一个500个要链接的文件的列表,并且它们都按顺序编号(如示例),你可以直接复制粘贴第一个超链接在列中,它将立即为您提供500个链接到其他文档。

仅供参考,文件不需要打开。单击该链接将打开链接的文档。

我知道这不是你所问的,但它相当接近。希望它有所帮助。