VBA100本ノック 26本目を動画で解説しています。Excelの神髄さんの模範解答はコチラ
問題
#VBA100本ノック 26本目
フォルダ選択のダイアログでフォルダを指定し、フォルダ内にあるファイルの一覧を「ファイル一覧」シートのA列に出力してください。
・ファイル名,更新日時,サイズ※画像参照
・Excelファイル(xls,xlsx,xlsm)にはハイパーリンクを設定
※サブフォルダは不要です。

解答
Sub FileDialogさん()
Dim fd As FileDialog, sPath
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
fd.Show
sPath = fd.SelectedItems(1)
Dim fso As New Scripting.FileSystemObject
Dim file As file
Dim i As Long
i = 2
For Each file In fso.GetFolder(sPath).Files
Cells(i, 1) = file.Name
Cells(i, 2) = file.DateLastModified
Cells(i, 3) = file.Size
If fso.GetExtensionName(file) Like "*xls*" Then
ActiveSheet.Hyperlinks.Add Anchor:=Cells(i, 1), _
Address:=fso.GetAbsolutePathName(file)
End If
i = i + 1
Next
End Sub
Sub ハイパーリンクさん()
ActiveSheet.Hyperlinks.Add Anchor:=Cells(7, 1), _
Address:="C:\26本目\Filedialogさん用\Book2.xlsm", _
TextToDisplay:="ブック2"
End Sub

新人君
初めてのハイパーリンクの
問題ですね!

ブチョ
俺はマスターランクだけどな!

新人君
ポケモンかな?
コメント