次の方法で共有


Application.EnumDirectories メソッド (Visio)

パスの一覧を指定して、Microsoft Visio が検索するフォルダーに名前を付ける配列を返します。

構文

EnumDirectories (PathsString, NameArray())

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

パラメーター

名前 必須 / オプション データ型 説明
PathsString 必須 String 完全なパスまたは部分的なパス名を示す文字列です。セミコロンで区切ります。
NameArray() 必須 String 出力パラメーターです。 列挙されたフォルダー名を受け取る配列です。

戻り値

なし

解説

AddonPathsTemplatePaths などのいくつかの Visio のプロパティでは、セミコロンで区切ったパス名 (フォルダー名) のリストと見なされる文字列が使用でき、これらを受け取ることもできます。 指定されたパスでアプリケーションが項目を検索する場合、フォルダーとそのすべてのサブフォルダーが検索されます。

EnumDirectories メソッドの目的は、AddonPaths プロパティが生成するような文字列を受け付け、アプリケーションがこれらの文字列を処理し、列挙したフォルダーのリストを返すことです。

EnumDirectories メソッドが成功すると、NameArray() は 0 ~ n - 1 のインデックスが付いた n 個の文字列で構成される 1 次元配列を返します。 各文字列には、存在するフォルダーの完全なパス名が含まれます。 リストには、パスのリストで指定されているフォルダーのうち、実際に存在するパスとそのすべてのサブフォルダーが表示されます。

NameArray() パラメーターは、EnumDirectories メソッドによって割り当てられる out パラメーターであり、所有権は呼び出し元に返されます。 最終的には、呼び出し側は、返された配列に対して SafeArrayDestroy プロシージャを実行する必要があります。 (Microsoft Visual Basic と Visual Basic for Applicationsは、配列のエントリによって参照される文字列を自動的に解放します)。

次の例は 、EnumDirectories メソッドを使用して、Visio がアドオンを検索するすべてのフォルダーの一覧を (イミディエイト ウィンドウで) 印刷する方法を示しています。

 
Public Sub EnumDirectories_Example() 
 
 Dim strDirectoryNames() As String 
 Dim intLowerBound As Integer 
 Dim intUpperBound As Integer 
 
 Application.EnumDirectories Application.AddonPaths, strDirectoryNames 
 
 intLowerBound = LBound(strDirectoryNames) 
 intUpperBound = UBound(strDirectoryNames) 
 
 While intLowerBound <= intUpperBound 
 Debug.Print strDirectoryNames(intLowerBound) 
 intLowerBound = intLowerBound + 1 
 Wend 
 
End Sub

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

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