フォルダー内のすべてのファイルを一覧表示を行う WD2002 サンプル マクロ

文書番号: 306248 - 対象製品
この資料の Word 2000 バージョン、について 236162 を参照してください。
すべて展開する | すべて折りたたむ

概要

この資料は、サンプルが Microsoft 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.
				

詳細

マイクロソフトは提供プログラミング言語の使用方法の一例としてのみ、姿表現または暗黙に提供します。 これはに含まれますに、黙示または商品性および特定目的に対する適合性の黙示保証は一切制限はありません。 この資料ではであると見なすは、例示されているプログラミング言語を作成したりプロシージャをデバッグするためのツールと使い慣れた。 マイクロソフト サポート エンジニアに、特定のプロシージャの機能について説明する役立ちますが追加機能を提供する構築手順、特定の要件を次の例は変更されません。 次のサンプル マクロ リストまたはファイル名、ファイル サイズと日付および時刻指定したフォルダーにあるすべてのファイルを印刷:
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 Knowledge Base) 資料を参照。
290140[OFFXP] サポート技術情報のサンプル コードを実行する方法
Visual Basic の forApplications とヘルプの追加についてはをクリック資料以下、資料の「サポート技術情報」(Microsoft Knowledge Base) を表示します。
305326[OFFXP Visual Basic のアプリケーションのリソースをプログラミング

プロパティ

文書番号: 306248 - 最終更新日: 2006年10月11日 - リビジョン: 3.3
この資料は以下の製品について記述したものです。
  • Microsoft Word 2002
キーワード:?
kbhowto kbmacroexample kbprogramming kbmt KB306248 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:306248
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック