

No.1ベストアンサー
- 回答日時:
以下のマクロは
ActiveWorkbook.Pathの一つ下の階層のフォルダパスを取得し、メッセージボックスに表示します。
標準モジュールに登録してください。
Sub Sample()
Dim FName As String
FName = Dir(ThisWorkbook.Path & "\" & "*", vbDirectory)
Do While FName <> ""
If (GetAttr(ThisWorkbook.Path & "\" & FName) And vbDirectory) > 0 And FName <> "." And FName <> ".." Then
MsgBox (FName)
End If
FName = Dir
Loop
End Sub
No.4
- 回答日時:
特殊フォルダを取得したいと言う事でしょうか?
その場合は、Windows Scripting Hostを使います。
Private Sub Sample_WshFol()
Dim MyPath As String
MyPath = CreateObject("WScript.Shell").SpecialFolders("MyDocuments") & "\"
'MyPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\" ’デスクトップ
Debug.Print MyPath 'イミディエイトウィンドウに出力
End Sub
また、任意のサブフォルダを取得する場合は、FileSystemObjectを使います。
folder As Scripting.folderを使用している為、事前バインディングしてください。
参照設定(VBE-ツール)でMicrosoft Scripting Runtimeにチェックを入れてください。
Sample_SubFolを実行します。
Option Explicit
'Dim Pch_Arr() As Variant
Private Sub Sample_SubFol()
Dim fso As Scripting.FileSystemObject
Set fso = New FileSystemObject
listSubFolders fso.GetFolder("C:\Users\"), 1
End Sub
Private Sub listSubFolders(ByVal folder As Scripting.folder, ByRef n As Long)
Dim fol As Scripting.folder
For Each fol In folder.SubFolders
Debug.Print fol 'イミディエイトウィンドウに出力
' ReDim Preserve Pch_Arr(n)
' Pch_Arr(n) = fol & "\"
' n = n + 1
' listSubFolders fol, n '再帰処理
Next
Set fol = Nothing
End Sub
Sampleは、1つ下の(For Eachで)サブフォルダすべてを抽出しています。
コメント部は、(今回、気にしないでください。)配列にアドレスを入れる。また、さらにに下階層抽出
No.2
- 回答日時:
一覧を取得すれば良いのでしょうか?
「ActiveWorkbook.Path」は「ActiveWorkbook」が保存されているパスなので上位フォルダは1つですが下位フォルダーは無かったり複数あったりします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルVBAで一つ上の階層を指定して保存したい
Excel(エクセル)
-
EXcelのマクロで相対パスでファイルを開く
その他(Microsoft Office)
-
エクセルマクロで指定フォルダの下層フォルダにあるファイル全てを集計したいのですが、1階層下のフォルダ
Excel(エクセル)
-
-
4
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
5
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
-
6
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
7
エクセルVBAでパスの¥マークについて
Access(アクセス)
-
8
1つ下の階層のフォルダに相対パスでアクセスするには
HTML・CSS
-
9
ActiveWorkbook.Pathの一つ上
PowerPoint(パワーポイント)
-
10
【VBA】マクロの入ったファイルと同じフォルダに,出力したファイルを保存するコードについて
Visual Basic(VBA)
-
11
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
12
VBAコード記述に際して、コード全体を自動的にインデント付ける方法
Access(アクセス)
-
13
エクセルVBAでブックを相対パスで保存する
Excel(エクセル)
-
14
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
15
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
16
エクセル イベントマクロ Changeイベントを複数作りたい
Access(アクセス)
-
17
ExcelVBA 図形をクリックした際のイベントを拾うには
Visual Basic(VBA)
-
18
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL VBAで、EXCELの入力規則...
-
Formatでmmが月と分を意味する理由
-
ActiveReportのDataSourceについて
-
テキスト表示位置を取得するには
-
ActiveWorkbook.Pathの一つ下の...
-
Java-jspの画面入力値保持について
-
JSPからJSPへ情報を渡せる?
-
フォーム上で押されたボタンに...
-
リクエストに応じたselectedの...
-
jspからServletを呼び、元のjsp...
-
「<c:forEach タグが終了し...
-
webアプリを作ってます。エラー...
-
JSPでのリストボックス表示
-
グローバルIPアドレスの変更タ...
-
ServletからServletへの値渡し
-
C言語で今まで表示していた画面...
-
ラジオボタンの選択肢をサーブ...
-
java初心者です。 画面Aで情報...
-
腕時計の時報をならないように...
-
三菱GOTの画面切り替えについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
登録済みイベントリスナーの情...
-
Formatでmmが月と分を意味する理由
-
ActiveWorkbook.Pathの一つ下の...
-
EXCEL VBAで、EXCELの入力規則...
-
VBAでTIFF画像を読み込むには?
-
jsp 動的テーブルについて
-
エクセルVBAでホームページの文...
-
MultipartRequestWrapperについて
-
ibatis queryForList取得できない
-
ActiveReportのDataSourceについて
-
GoogleMapでの複数マーカー表示...
-
ミキサーの操作
-
[JavaScript] 正規表現による複...
-
java → jsp コンボボックス表示...
-
指定地点(緯度・経度)から指定...
-
テキスト表示位置を取得するには
-
strutsで空白を認識させるには?
-
ADO.NETの処理分岐について教え...
-
javaを使い、jsonデータを取得...
-
javascriptでローカルフォルダ...
おすすめ情報