-1
次のコードを使用して、ユーザーがフォルダを選択し、各ファイルが最後に変更された時刻を一覧表示することができます。 3番目の列はファイルの名前です。フォルダ内のファイルを一覧表示する
Sub ListFils()
Dim f As Object, fso As Object, flder As Object
Dim folder As String
Dim wb As Workbook, ws As Worksheet
Set wb = ActiveWorkbook
Set ws = ActiveSheet
Set fso = CreateObject("Scripting.FileSystemObject")
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
If .SelectedItems.Count = 0 Then
MsgBox "Cancel Selected"
End
End If
folder = .SelectedItems(1)
End With
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
For Each f In fso.GetFolder(folder).Files
ws.Range("A" & ws.Rows.Count).End(xlUp).Offset(1, 0) = f.DateLastModified
ws.Range("B" & ws.Rows.Count).End(xlUp).Offset(1, 0) = f.DateLastModified
ws.Range("C" & ws.Rows.Count).End(xlUp).Offset(1, 0) = f.Name
Next
Columns("A:C").Columns.AutoFit
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
End Sub
コードはWindowsでは動作しますが、Macでは動作しません。どのように私はそれを働かせることができる任意のアイデア?ティムとして
"...全く動作しません" - エラーがありますか?それは実行されますが、ものをスキップしますか?それはまったく動かないのですか?通知を受け取りますか?あなたはMacでそれを実行するとどうなりますか? – BruceWayne
ScriptingライブラリのようなActivexオブジェクトはMacでは利用できません。あなたは同じことをするのに 'Dir()'を使うことができるはずです。 –
@ BruceWayne、それは私に何も得られません。デバッグポップアップが表示されます。 @TimWilliams、ヒントありがとうございましたが、私はコーディングの第一歩を踏み出しました。使用方法はわかりません。私は 'Dir()'を使ってみましたが、このコマンドを使ってファイルを検索できました。 –