goo blog サービス終了のお知らせ 

Excel(エクセル)とWord(ワード)2010.2013の使い方

Microsoft Officeの2010.2013 のの使い方を詳細に解説しています

ファイル名一覧を作成するマクロ

2012-08-31 15:18:25 | Office
対象:Excel2003, Excel2007, Excel2010コマンドプロンプトのDIRコマンドを使ってファイル名一覧を作成する方法をご紹介しています。

同じようなことをExcelのマクロでやりたいということも実務ではあります。

いくつかの方法が考えられますが、まずFileSystemObjectなどを使わない、Dir関数を使ったマクロをご紹介します。


▼フォルダを指定してファイル名一覧を作成するマクロ

Sub フォルダを指定してファイル名一覧を作成する()
'先頭にシートを挿入して
'指定したフォルダのファイル名一覧を作成する

 Dim fld As FileDialog
 Dim fp As String
 Dim f As String
 Dim i As Long
 
 'フォルダを指定するダイアログを表示する
 Set fld = Application.FileDialog(msoFileDialogFolderPicker)
 'キャンセル時にマクロ終了
 If fld.Show = 0 Then Exit Sub
  
 'フォルダのフルパスを変数に格納
 fp = fld.SelectedItems(1)
 
 '指定されたフォルダの一つ目のファイル名を取得
 f = Dir(fp & "\*")
 If f = "" Then MsgBox "ファイルが存在しません。": Exit Sub

 'ワークシートを先頭に挿入
 Worksheets.Add Before:=Worksheets(1)
 
 Range("A1").Value = fp
 Range("A2").Value = "のファイル一覧"
 Range("A4").Value = "ファイル名"
 
 'A5セルから下にファイル名を書き出し
 i = 5
 Do While f <> ""
  Cells(i, 1).Value = f
  i = i + 1
  '次のファイル名を取得
  f = Dir()
 Loop

 MsgBox Worksheets(1).Name & "にファイル名一覧を作成しました。"

End Sub


上記のマクロを実行すると、フォルダを指定するダイアログが表示され、ファイルが存在していれば、ブックの先頭にシートを挿入して、A5セルから下に向かってファイル名一覧が作成されます。

まず
 Set fld = Application.FileDialog(msoFileDialogFolderPicker)
で、フォルダを指定するモードでFileDialogを表示して、
 fp = fld.SelectedItems(1)
指定されたフォルダのフルパスを変数「fp」に格納します。

Dir関数を使って
 f = Dir(fp & "\*")
指定されたフォルダの一つ目のファイルを変数「f」に格納します。

Dir関数は、引数を指定せずに呼ばれると、その直前に指定されたのと同じ引数で、既にみつかっているファイルを除外したファイル名を返します。

Do While ~ Loop文で、Dir関数が値を返さなくなるまで、ループをまわして
 Do While f <> ""
  Cells(i, 1).Value = f
  i = i + 1
  '次のファイル名を取得
  f = Dir()
 Loop
A列にファイル名を書きだしていきます。

WINDOWS7
Windows7 Home Premium 32bit sp1日本語[ダウンロード版] ¥9,800円(税込)

Windows7 Home Premium 64bit SP1 日本語 [ダウンロード版] ¥8,600(税込)

Windows7 Professiona 32bit SP1 日本語 8,800~9,800 円 (税込)

Windows7 Professiona 64bit SP1 日本語 8,800~9,800 円 (税込)

Windows7 Ultimate 32bit SP1 日本語 [ダウンロード版] 10,800 円 (税込)

Windows7 Ultimate 64bit SP1 日本語 [ダウンロード版] 10,800 円 (税込)

OFFICE2010
Office Professional 2010 ダウンロード版 ¥10,800円(税込)

Office Personal 2010 ダウンロード版 ¥8,600(税込)

Microsoft Office for Mac Home and Business 2011 2 パック [ダウンロード版] ¥ 12,800 円(税込)

Microsoft Office for Mac Home and Student 2011 1パック [ダウンロード版]

ADOBE
Adobe Acrobat X Pro ダウンロード版(日本語版)¥10,200円(税込)

Adobe Photoshop CS5 Extended ダウンロード版(日本語版)¥12,800円(税込)

Adobe Photoshop CS6 Extended ダウンロード版(日本語版)¥22,800円(税込)