-1
다음 코드를 사용하여 사용자가 폴더를 선택한 다음 각 파일이 수정 된 마지막 시간을 나열하도록합니다 (하루 동안 하나의 열과 다른 시간으로 하나씩). 세 번째 열은 파일 이름입니다.폴더의 파일 나열
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
Mac에서는 스크립팅 라이브러리와 같은 Activex 객체를 사용할 수 없습니다. 당신은'Dir()'을 사용하여 같은 일을 할 수 있어야합니다. –
@ BruceWayne, 그것은 나에게 아무것도주지 않습니다. 디버그 팝업이 나타납니다. @TimWilliams, 팁 주셔서 감사합니다,하지만 난 코딩의 첫 번째 단계에서 오전, 나는 그것을 사용하는 방법을 모르겠다. 'Dir()'을 사용하려고했지만이 명령으로 파일을 검색 할 수있었습니다. –