回答編集履歴
1
修正
answer
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
Set mFSO = New FileSystemObject
|
|
18
18
|
|
|
19
19
|
'ファイルフルパス一覧取得
|
|
20
|
-
GetFileList strFolder, ix
|
|
20
|
+
GetFileList mFSO.GetFolder(strFolder), ix
|
|
21
21
|
End Sub
|
|
22
22
|
|
|
23
23
|
'フォルダの選択
|
|
@@ -34,26 +34,27 @@
|
|
|
34
34
|
End Function
|
|
35
35
|
|
|
36
36
|
'ファイル一覧取得(サブフォルダ含む)
|
|
37
|
-
Private Function GetFileList(ByVal
|
|
37
|
+
Private Function GetFileList(ByVal objFolder As Folder, ByRef i As Long) As Boolean
|
|
38
|
-
Dim
|
|
38
|
+
Dim fo As Folder
|
|
39
|
-
Dim
|
|
39
|
+
Dim fi As File
|
|
40
40
|
|
|
41
|
-
For Each
|
|
41
|
+
For Each fo In objFolder.SubFolders
|
|
42
|
-
GetFileList
|
|
42
|
+
GetFileList fo, i
|
|
43
|
+
Next
|
|
43
44
|
|
|
44
|
-
|
|
45
|
+
For Each fi In objFolder.Files
|
|
45
|
-
|
|
46
|
+
If mFSO.GetExtensionName(fi) Like "xls?" Then
|
|
46
|
-
|
|
47
|
+
i = i + 1
|
|
47
|
-
|
|
48
|
+
With mRng(i, 1)
|
|
48
|
-
|
|
49
|
+
.Worksheet.Hyperlinks.Add Anchor:=.Cells, _
|
|
49
|
-
|
|
50
|
+
Address:=fi.Path, _
|
|
50
|
-
|
|
51
|
+
TextToDisplay:=fi.Name
|
|
51
|
-
|
|
52
|
+
End With
|
|
52
|
-
|
|
53
|
+
End If
|
|
53
|
-
Next
|
|
54
54
|
Next
|
|
55
55
|
End Function
|
|
56
56
|
|
|
57
|
+
|
|
57
58
|
```
|
|
58
59
|
|
|
59
60
|
僕なら
|
|
@@ -77,9 +78,8 @@
|
|
|
77
78
|
Dir関数の方が処理は速いらしいですが、コードを書くのに
|
|
78
79
|
FSOの方が使い便利がいいので。
|
|
79
80
|
|
|
80
|
-
あと、ループの仕方も違いますが、その辺はお好みで。
|
|
81
|
-
出力される順番が違ってくるかも知れませんが。
|
|
82
|
-
|
|
83
81
|
※簡単な動作確認はしてますが、
|
|
84
82
|
もれなくリストアップされるかは確認してませんので、
|
|
85
|
-
間違いがないか自己責任でお願いします。
|
|
83
|
+
間違いがないか自己責任でお願いします。
|
|
84
|
+
|
|
85
|
+
※コードに不具合があったので修正しました。
|