2012-05-21 40 views
1

我试图与呼叫Word为Mac宏来获得活动文档的路径

strFolder = ActiveDocument.Path 

这使文件名也返回活动文档的路径在我的Word为Mac宏。

是否存在仅用于减去ActiveDocument.Name的路径或字符串操作的命令?

回答

0

我不知道这是为什么发生,但分辨率低于...

strFolder = Replace(ActiveDocument.Path, ActiveDocument.Name, "") 

希望这可以帮助别人,将来别人!

1

FWIW我认为这个问题是在Word 2008中引入的,其中“路径”和“全名”属性具有相同的值(在Applescript中,因为没有VBA)。在Word 2004中,相同的VBA工作正常。

现有解决方案中的一个潜在问题是文件夹可能具有与文档相同的名称,例如,你的文件全名可能是

Macintosh HD:Users:me:Documents:mydoc.docx:mydoc.docx 

如果您需要处理,你可以考虑像

strFolder = left(ActiveDocument.Path, len(ActiveDocument.Path) - len(ActiveDocument.Name)) 

(也许是不同的东西需要的未保存的文档,也是如此)。