递归 visio 文档目录,以"find-and-replace"所有超链接地址



我有以下VBA脚本,我用它来替换特定Visio文档中所有超链接中的地址。(将%20替换为原始空间,以允许链接在Chrome/Firefox中工作。)

Sub ChangeHyperlinks() ' change all hyperlinks on all shapes on all pages that start with
     ' "%20" to start with " "
    Dim pg As Page 
    Dim shp As Shape 
    Dim hl As Hyperlink 
    For Each pg In ActiveDocument.Pages 
        For Each shp In pg.Shapes 
            For Each hl In shp.Hyperlinks 
                hl.Address = Replace(hl.Address, "%20", " ") 
            Next 
        Next 
    Next 
End Sub 

我想要一种方法将上述代码应用于特定文件夹和子文件夹内的所有Visio文档。

您可能希望使用FileSystemObject类来生成一个文件夹(包括子文件夹)中所有VBA文件的列表。如果您搜索FileSystemObject和VBA,应该会有示例。

然后可以遍历文件路径列表,并使用Visio的Application.Documents.Open例程打开每个文件,运行ChangeHyperlinks宏,然后保存并关闭文件。

相关内容

  • 没有找到相关文章

最新更新