0

特定の Visio ドキュメント内のすべてのハイパーリンクのアドレスを置き換えるために使用している次の VBA スクリプトがあります。%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 ドキュメントに上記のコードを適用する方法が必要です。

4

1 に答える 1

0

おそらく、FileSystemObject クラスを使用して、サブフォルダーを含む、フォルダー内のすべての VBA ファイルのリストを生成することをお勧めします。FileSystemObject と VBA を検索すると、例があるはずです。

次に、ファイル パスのリストをループ処理し、Visio の Application.Documents.Open ルーチンを使用して各ファイルを開き、ChangeHyperlinks マクロを実行してから、ファイルを保存して閉じます。

于 2014-08-12T17:22:05.917 に答える