[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『フォルダ内のファイル名の一覧を取得したい』(たろ)
------------------------------------------------------------- Sub フォルダを指定してファイル名一覧を作成する() Dim dlg As FileDialog Dim fol_path As String 'フォルダのフルパス Dim f_name As String 'ファイル名 Dim Path As String ' パスを取得 Path = ThisWorkbook.Path Dim i As Long 'ファイル名を出力する行番号
Set dlg = Application.FileDialog(msoFileDialogFolderPicker) If dlg.Show = False Then Exit Sub 'キャンセル時 fol_path = dlg.SelectedItems(1) 'フォルダのフルパスを格納 f_name = Dir(fol_path & "\*.xlsx") 'フォルダ内の一つ目のファイル名を取得 If f_name = "" Then MsgBox fol_path & " にはファイルが存在しません。" Exit Sub End If
Worksheets.Add before:=Sheets(1) 'Range("A1").Value = fol_path 'Range("A2").Value = "のファイル一覧" Range("A1").Value = "ファイル名一覧"
'A5セルから下にファイル名を書き出し i = 2 Do Until f_name = "" Cells(i, "A").Value = fol_path & f_name i = i + 1 '次のファイル名を取得 f_name = Dir Loop
MsgBox Sheets(1).Name & "にファイル名一覧を作成しました。" Worksheets.Add after:=Worksheets(1) Worksheets(2).Name = "対象ファイル一覧" End Sub -----------------------------------------------------------------
フォルダ内の、エクセルファイルを取得するコードです。
「対象ファイル一覧」シートを、固定シートとしてマクロボタンを作成してボタンを押すとそのシートに書きだして欲しいのですが新しくシートが作成されてしまいます。
どこを、どう修正すれば良いですか?
これを、マスターファイルにしたいのでマクロボタンを置いたシートで動作してほしいです。
< 使用 Excel:Excel2013、使用 OS:Windows8 >
>Worksheets.Add before:=Sheets(1)
>MsgBox Sheets(1).Name & "にファイル名一覧を作成しました。" >Worksheets.Add after:=Worksheets(1) >Worksheets(2).Name = "対象ファイル一覧"
( マナ) 2017/11/23(木) 19:43
早急の回答ありがとうございます。
出来ました。
(たろ) 2017/11/23(木) 19:49
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.