![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
マクロ超初心者です!教えて下さい。
下記のコードだと、セルA5以降にファイル名一覧が出力されるんですが、ファイル名ではなくファイルのフルパスが出力されるようにしたいです。
どこをどう変更すればいいか、教えてください。ネットでも色々調べて、コード書き換えたりしたんですが全然上手くいかず…
よろしくお願いします。
Sub フォルダを指定してファイル名一覧を作成する()
Dim dlg As FileDialog
Dim fol_path As String 'フォルダのフルパス
Dim f_name As String 'ファイル名
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 & "\*") 'フォルダ内の一つ目のファイル名を取得
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("A4").Value = "ファイル名"
'A5セルから下にファイル名を書き出し
i = 5
Do Until f_name = ""
Cells(i, "A").Value = f_name
i = i + 1
'次のファイル名を取得
f_name = Dir
Loop
MsgBox Sheets(1).Name & "にファイル名一覧を作成しました。"
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
>ファイルのフルパスが出力されるようにしたいです
変数fol_pathにフォルダのパスが入っている(A1セルに表示)ので、ファイル名( f_name )をセルに代入する代わりに、
fol_path & "\" & f_name
を代入してゆけばよいですが、やたらと同じフォルダパスが並ぶことになりますけど・・・
単純にフォルダのパスと連結すればよいだけなので、現状の結果に対して、例えばB5セルに
=$A$1 & "\" & A5
の関数式を代入して、下方にオートフィルしても、B列にフルパスが表示されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel関数の式の作り方を教えて...
-
【ExcelVBA】最終行の取得で困...
-
Excelのセル値に基づいて図形の...
-
EXCELのページを、枠線を維持し...
-
Excel 数式バーの情報を、別シ...
-
Excelで、時間の引き算でマイナ...
-
Excel 最小二乗法 二次関数
-
Excelで数式を用いて番号を順に...
-
エクセルで現場ごとに機材の移...
-
他部署からもらう データで、 ...
-
とびとびの大量セルを選択した...
-
Excel 1の位の数字で処理を分岐...
-
-1234 を (1234) と表記する由...
-
エクセルの数式バーのフォント...
-
MACにおけるエクセルの入力トラ...
-
Excelのセルの色を変えた行(す...
-
エクセルの数式について教えて...
-
Lookup関数
-
Excelでの記号と特殊文字につい...
-
EXCELの散布図で日付が1900年に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報