InvisibleApp.StencilPaths プロパティ (Visio)
Microsoft Visio がステンシルを検索するパスを取得または設定します。 値の取得と設定が可能です。
構文
式。StencilPaths
式InvisibleApp オブジェクトを表す変数。
戻り値
String
注釈
StencilPaths プロパティは、既定では空の文字列 ("") に設定されます。
StencilPaths プロパティとの間で渡される文字列と受け取る文字列は、[ファイルの場所] ダイアログ ボックスに表示される文字列と同じです。 ([ ファイル ] タブをクリックし、[ オプション] をクリックし、[ 詳細設定] をクリックし、[ 全般] の [ ファイルの場所] をクリックします)。この文字列は、 HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Visio\Application\StencilPath サブキーに格納されます。
ステンシルを検索するときに、Visio は StencilPaths プロパティで指定されたすべてのパス、およびそれらのパスのすべてのサブフォルダーを検索します。 StencilPaths プロパティを EnumDirectories メソッドに渡すと、渡されたフォルダーの完全修飾パスの全一覧が返されます。
StencilPaths プロパティを設定すると、[ファイルの場所] ダイアログ ボックスのステンシルの既存の値が置き換えられます。 既存の値を保持するには、次のコードに示すように、既存の文字列を取得し、その文字列に対して新しいファイル パスを追加します。
Application.StencilPaths = Application.StencilPaths & ";" & "newpath ".
警告
レジストリ エディターでもプログラムによっても、任意の方法で Windows レジストリを変更すると、常にある程度のリスクが伴います。 変更が不適切な場合、オペレーティング システムの再インストールが必要になるなどの問題が起きる場合があります。 コンピューターのレジストリの修正の際には、常にあらかじめバックアップをとるようにしてください。
例
この Microsoft Visual Basic for Applications (VBA) マクロは、StencilPaths プロパティを使用して、ステンシルへのパスを追加する方法を示します。
Public Sub ShowStencilPaths_Example()
Dim strMessage As String
Dim strNewPath As String
Dim strStencilPath As String
Dim strTitle As String
'Get the path we want to add.
strStencilPath = Application.StencilPaths
strTitle = "StencilPaths"
strMessage = "The current content of the Visio Stencils box is:"
strMessage = strMessage & vbCrLf & strStencilPath
MsgBox strMessage, vbInformation + vbOKOnly, strTitle
strMessage = "Type in an additional path for Visio to look for stencils. "
strNewPath = InputBox$(strMessage, strTitle)
'Make sure the folder exists and that it's not
'already in the stencil paths.
strMessage = ""
If strNewPath = "" Then
strMessage = "You did not enter a path."
ElseIf InStr(strStencilPath, strNewPath) Then
strMessage = "The path you specified is already in the stencil paths."
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.StencilPaths = strStencilPath & ";" & strNewPath
strMessage = "We just added " & strNewPath & _
" to the stencil paths."
End If
If strMessage <> "" Then
MsgBox strMessage, vbExclamation + vbOKOnly, strTitle
End If
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。