Excelでの作業が得意でないという方に朗報です!
Excel VBAを使えば、フォルダ内のファイルを一括で読み込み、データを整理することができます。この記事では、初心者向けにExcel VBAのプログラムコードを解説しながら、自動でフォルダの中身のファイル一覧を作成することができます。さらに、ハイパーリンクにすることで、簡単にアクセス可能にできます。
特に図面や請求書、見積などは、PDFファイルだと開かないと見えませんが、一覧ファイルを作り、ハイパーリンクを設定することで、誰でも簡単に効率的に管理することができます。
ぜひ最後までご覧ください!
・ファイルが乱雑になって、整理できない。。。
・大量の図面・請求書・見積書があり、一覧にしたい。。。
・ファイルを開いたりするのが面倒。複数人で情報を共有したい。
こんな悩みを解決します。
ブログの対象者
・大量のPDFファイルを扱う、管理する人(経理・事務作業)
・複数の人で共通フォルダを利用している
・ファイルが多すぎてファイルの一覧表が欲しい人
この方法の良いところは、図面フォルダさえ作り、ファイル名称さえ個別に設定すれば、一覧表のシステムを簡単に作ることができることです。誰が見ても、図面管理・請求書・見積書の管理システムを簡単に作ることができます。
フォルダ内のファイルの一覧をハイパーリンクに表示する
以下のVBAコードを使用して、フォルダ内のすべてのファイルを読み込み、ExcelのB列に行の番号、C列にファイル名、D列にファイルのハイパーリンクを表示するプログラムを作成できます。
フォルダ内のファイルを表示する一覧表の作成
下記のような表を事前に作成します。最初は空の表になります。
ここにファイルの一覧を表示するプログラムを作っていきます。
下記フォルダの中に、複数のファイルが入っています。
事前準備が終わったので、プログラムを作成します。
ファイル一覧作成の VBA プログラム
以下の関数を使用することで、フォルダ内のファイルを特定の基準に基づいて分類することができます。
今回のフォルダパス:C:\Users\user\OneDrive\ドキュメント\VBA
フォルダパスについては、自分のPCに合わせて、設定してください。そのフォルダの中身の一覧表を作成します。下記プログラムコードをコピーすることで、ファイルの一覧表を作成することができます。
Sub フォルダ内のファイルを読み込む()
Dim フォルダパス As String
Dim ファイル名 As String
Dim 行番号 As Integer
' フォルダのパスを指定
フォルダパス = "C:\Users\user\OneDrive\ドキュメント\VBA"
' フォルダ内のファイルを取得
ファイル名 = Dir(フォルダパス & "\*")
' 行番号を初期化
行番号 = 1
' ファイルを読み込んでデータを記入
Do While ファイル名 <> ""
' B列に行番号を記入
Cells(行番号 + 1, 2).Value = 行番号
' C列にファイル名を記入
Cells(行番号 + 1, 3).Value = ファイル名
' D列にハイパーリンクを表示
Cells(行番号 + 1, 4).Formula = "=HYPERLINK(""" & フォルダパス & "\" & ファイル名 & """)"
' 次の行番号に移動
行番号 = 行番号 + 1
' 次のファイルを取得
ファイル名 = Dir
Loop
End Sub
ではプログラムを実行してみましょう!
いつも通り、再生ボタンを押します。
実行すると、もともと何も記載されていなかった表に、ファイルのNo, ファイル名称、Hyperlinkが記載された一覧表が作成されます。
もちろん、Hyperlinkをクリックすると、PDFファイルを開いたり、絵を開くこともできます。
リンクされていると、ファイルを探すのも簡単になります。請求書なども、複数になると管理が難しいですが、ファイル名称さえしっかりつければ、このように日付けで分けたり、いろいろなことができ、管理が簡単にできます。
まとめ
この記事では、Excel VBAを使用してフォルダ内のファイルを効率的に読み込み、データを整理する方法について解説しました。ブログに興味のある方が抱える悩みや、このブログの対象者にも配慮しながら、初心者向けの具体的な手順をご紹介しました。
まず、Excel VBAを使えば、複数のファイルを手動で処理する手間を省くことができます。フォルダ内のすべてのファイルを順番に読み込んで、Excelのシート上に行番号とファイル名を表示する方法を学びました。さらに、ハイパーリンクを使用してファイルに直接アクセスできるようにしました。