WD2002: 폴더의 모든 파일 목록 예제 매크로

기술 자료 번역 기술 자료 번역
기술 자료: 306248 - 이 문서가 적용되는 제품 보기.
이 문서에서는 Microsoft Word 2000 버전에 236162 참조하십시오.
모두 확대 | 모두 축소

요약

이 문서에서는 예제 Visual Basic 지정한 폴더에 모든 파일의 목록을 만드는 데 사용할 수 있는 매크로가 포함되어 있습니다. 매크로 다음 정보를 새 Word 문서를 반환합니다.
  • 나열된 파일에 대한 폴더 이름
  • 찾을 파일의 파일 이름
  • 파일 찾을 수 있는 파일 크기
  • 날짜 및 시간을 찾을 파일
  • 나열된 파일 중 총
매크로 파일 목록을 다음 예제와 비슷한 만듭니다.
   File Listing of the C:\MY DOCUMENTS folder!

   File Name                       File Size       File Date/Time
   ----------------------------------------------------------------------

   Background.doc                  1461            2/24/99 2:16:52 PM
   Backup of Background.wbk        1461            2/24/99 2:14:10 PM
   Book1.xls                       15360           6/15/99 3:07:42 PM
   Book2.xls                       13824           11/12/98 4:28:50 PM
   Book3.xls                       13824           11/24/98 9:38:32 AM

   Total files in folder = 5 files.
				

추가 정보

Microsoft는 묵시적인 보증 없이 목적으로만 프로그래밍 예제를 제공합니다. 이 포함되지만, 상품성 또는 특정 목적에의 적합성에 대한 묵시적인된 보증이 제한되지 않습니다. 이 문서에서는 만들려면 및 프로시저를 디버깅하는 데 사용되는 도구 및 여기서 설명하는 프로그래밍 언어에 익숙한 사용자를 대상으로 합니다. Microsoft 지원 엔지니어는 사용자에게 도움이 되도록 특정 절차에 대한 기능을 설명할 수 있지만 추가 기능을 제공하거나 특정 요구 사항에 맞도록 프로시저를 구성하지는 이 예제를 수정하지 않습니다. 다음 예제 매크로는 목록 또는 파일 이름, 파일 크기, 날짜 및 시간을 지정한 폴더에 있는 모든 파일의 출력합니다:
Sub FolderList()
'
' Example Macro to list the files contained in a folder.
'

   Dim x As String, MyName As String
   Dim i As Integer
   Dim Response As Integer, TotalFiles As Integer

   On Error Resume Next

Folder:

   ' Prompt the user for the folder to list.
   x = InputBox(Prompt:="What folder do you want to list?" & vbCr & vbCr _
         & "For example: C:\My Documents", _
         Default:=Options.DefaultFilePath(wdDocumentsPath))

   If x = "" Or x = " " Then
      If MsgBox("Either you did not type a folder name correctly" _
            & vbCr & "or you clicked Cancel. Do you want to quit?" _
            & vbCr & vbCr & _
            "If you want to type a folder name, click No." & vbCr & _
            "If you want to quit, click Yes.", vbYesNo) = vbYes Then
         Exit Sub
      Else
         GoTo Folder
      End If
   End If

   ' Test if folder exists.
   If Dir(x, vbDirectory) = "" Then
      MsgBox "The folder does not exist. Please try again."
      GoTo Folder
   End If

   ' Search the specified folder for files
   ' and type the listing in the document.
   With Application.FileSearch
      .NewSearch
      .FileType = msoFileTypeOfficeFiles
      ' Change the .FileType to the type of files you are looking for;
      ' for example, the following line finds all files:
      ' .FileType = msoFileTypeAllFiles
      .LookIn = x
      .Execute
      TotalFiles = .FoundFiles.Count
      If TotalFiles = 0 Then
         MsgBox ("There are no files in the folder!" & _
               "Please type another folder to list.")
         GoTo Folder
      End If

      ' Create a new document for the file listing.
      Application.Documents.Add
      ActiveDocument.ActiveWindow.View = wdPrintView

      ' Set tabs.
      With Selection.ParagraphFormat.TabStops
         .Add _
               Position:=InchesToPoints(3), _
               Alignment:=wdAlignTabLeft, _
               Leader:=wdTabLeaderSpaces
         .Add _
               Position:=InchesToPoints(4), _
               Alignment:=wdAlignTabLeft, _
               Leader:=wdTabLeaderSpaces
      End With

      ' Type the file list headings.
      Selection.TypeText "File Listing of the "

      With Selection.Font
         .AllCaps = True
         .Bold = True
      End With
      Selection.TypeText x
      With Selection.Font
         .AllCaps = False
         .Bold = False
      End With
      Selection.TypeText " folder!" & vbLf
      Selection.Font.Underline = wdUnderlineSingle
      Selection.TypeText vbLf & "File Name" & vbTab & "File Size" _
            & vbTab & "File Date/Time" & vbLf & vbLf
      Selection.Font.Underline = wdUnderlineNone
      For i = 1 To TotalFiles
         MyName = .FoundFiles(i)
         Selection.TypeText MyName & vbTab & FileLen(MyName) _
               & vbTab & FileDateTime(MyName) & vbLf
      Next i

      ' Type the total number of files found.
      Selection.TypeText vbLf & "Total files in folder = " & TotalFiles & _
            " files."
   End With

   If MsgBox("Do you want to print this folder list?", vbYesNo)=vbYes Then
      Application.ActiveDocument.PrintOut
   End If

   If MsgBox("Do you want to list another folder?", vbYesNo)=vbYes Then
      GoTo Folder
   End If

End Sub
				

참조

이 문서에 나와 있는 예제 코드를 사용하는 방법에 대한 자세한 내용은 아래 문서 번호를 눌러 Microsoft 기술 자료에 있는 문서를 클릭하십시오.
290140OFFXP: 기술 자료 문서의 예제 코드를 실행하는 방법
Visual Basic forApplications 도움말 보기에 대한 자세한 내용은 아래 문서 번호를 눌러 Microsoft 기술 자료에 있는 문서를 클릭하십시오.
305326OFFXP: 리소스 응용 프로그램에 대해 VBA 프로그래밍

속성

기술 자료: 306248 - 마지막 검토: 2006년 10월 11일 수요일 - 수정: 3.3
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Word 2002 Standard Edition
키워드:?
kbmt kbhowto kbmacroexample kbprogramming KB306248 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com