Application.TemplatePaths プロパティ (Visio)

Microsoft Visio がテンプレートを検索するパスを取得または設定します。 値の取得と設定が可能です。

構文

TemplatePaths

expressionApplication オブジェクトを 表す変数。

戻り値

String

注釈

TemplatePaths プロパティは、既定では空の文字列 ("") に設定されます。

TemplatePaths プロパティとの間で渡される文字列と受け取る文字列は、[ファイルの場所] ダイアログ ボックスに表示される文字列と同じです。 ([ ファイル ] タブをクリックし、[ オプション] をクリックし、[ 詳細設定] をクリックし、[ 全般] の [ ファイルの場所] をクリックします)。この文字列は、 HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Visio\Application\TemplatePath サブキーに格納されます。

テンプレートを検索するときに、Visio は TemplatePaths プロパティに指定されているすべてのパスとそれらのパスに属するすべてのサブフォルダーを検索します。 TemplatePaths プロパティを EnumDirectories メソッドに渡すと、渡されたフォルダーの完全修飾パスの全一覧が返されます。

TemplatePaths プロパティを設定すると、[ファイルの場所] ダイアログ ボックスの [テンプレート] の既存の値が置き換えられます。 既存の値を保持するには、次のコードに示すように、既存の文字列を取得し、その文字列に対して新しいファイル パスを追加します。

Application.TemplatePaths = Application.TemplatePaths & ";" & "newpath".

警告

レジストリ エディターでもプログラムによっても、任意の方法で Windows レジストリを変更すると、常にある程度のリスクが伴います。 変更が不適切な場合、オペレーティング システムの再インストールが必要になるなどの問題が起きる場合があります。 コンピューターのレジストリの修正の際には、常にあらかじめバックアップをとるようにしてください。

この Microsoft Visual Basic for Applications (VBA) マクロは、TemplatePaths プロパティを使用して、[テンプレート] パスのボックスの一覧にパスを追加する方法を示します。

 
Public Sub TemplatePaths_Example()  
 
    Dim strMessage As String 
    Dim strNewPath As String 
    Dim strTemplatePath As String 
    Dim strTitle As String 
     
    'Get the path we want to add.  
    strTemplatePath = Application.TemplatePaths  
    strTitle = "TemplatePaths"  
    strMessage = "The current content of the Visio Templates path box is:"  
    strMessage = strMessage & vbCrLf & strTemplatePath  
    MsgBox strMessage, vbInformation + vbOKOnly, strTitle  
    strMessage = "Type in an additional path for Visio to look for templates."  
    strNewPath = InputBox$(strMessage, strTitle)  
 
    'Make sure the folder exists and that it's not 
    'already in the Templates path box.  
    strMessage = ""  
    If strNewPath = ""  Then 
        strMessage = "You did not enter a path." 
        ElseIf InStr(strTemplatePath, strNewPath)  Then 
            strMessage = "The path you specified is already in the Templates path box."  
        ElseIf Len(Dir$(strNewPath, vbDirectory)) = 0 And _  
                Len(Dir$(Application.Path & strNewPath, _  
                vbDirectory)) = 0 Then 
            strMessage = "The folder you typed does not exist (or is blank)."  
        Else 
            Application.TemplatePaths = strTemplatePath & ";" & strNewPath  
            strMessage = "We just added " & strNewPath & _  
                " to the Templates path box."  
    End If 
   
    If strMessage <> ""  Then 
        MsgBox strMessage, vbExclamation + vbOKOnly, strTitle  
    End If  
  
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。