
「処理の対象となるファイルを指定する」
Excel業務効率化ツールでは、「フォルダ選択」や「ファイル選択」という操作や仕様は、設計上、避けて通れません。
みなさん、こんにちは。セルネッツ竹本です。
今回は、「PATHの分割」をテーマに、解説をしたいと思います。
ファイル取り込みの自動化
取り込むファイルを毎回探して、名前を手で書き換えていませんか?
- 取り込み元のファイルを毎回開いてコピー・貼り付けしている
- ファイル名や保存場所が変わるたび、マクロの修正が必要になる
- 出力ファイルの名前付けが担当者任せで、どれが最新か分からない
そのお悩み、ファイル選択からの自動取り込みで解決できます。Excel専門のシステム開発会社『セルネッツ』なら、ファイルを選ぶだけでデータを取り込む仕組みを作れます。元ファイルと同じ場所への出力や、ルールに沿った名前付けも自動化できます。前任者が作ったマクロの改修にも対応します。
\Excel専門特化 × 低価格 × スピード対応/
全国対応・お見積もり無料
◆特定のファイル選択により得られる情報
↓(A)Call する側の記述
Call M_PATHブック指定("01", P_FullPath, P_GetPath名, P_GetFile名)
↓(B)Callされる側の分割Module
Public P_FullPath As String
Public P_GetFile名 As String
Public P_GetPath名 As String
‘※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
Sub M_PATHブック指定(P_BTN区分 As String, P_FullPath, P_GetPath名, P_GetFile名)
‘※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
Dim S_文言 As String
CreateObject("Wscript.shell").CurrentDirectory = ThisWorkbook.Path
Select Case P_BTN区分
Case "01"
S_文言 = "[入力ファイル] (*.xlsx)ファイルを指定して下さい。"
P_FullPath = Application.GetOpenFilename("Excelファイル,*.xlsx", , S_文言)
Case "02" '(補足:*.pdf *.txt *.csv など区分に応じて)
Case Else
End Select
P_GetFile名 = Dir(P_FullPath)
Dim S_位置 As Long
S_位置 = InStrRev(P_FullPath, "\")
P_GetPath名 = Left(P_FullPath, S_位置)
End Sub
【Point】ファイル指定は、1Module内に集約すること。複数Moduleに分散するとバグリスクがUP
◆取得後の分割結果

上記のように、ファイルのフルPATHを、
(1)格納先PATH (2)ファイル名 に分割することができます。
どんなケースで便利なのか、事例をあげると。
「入力ファイルとして読み込んだ格納先と同じ場所に、1セットとなるよう結果を保存したい。」
このような要望が多いためです。
今回のテーマは、「PATHの分割」について、解説を行いました。
本記事が、Excel実務の効率化において、ご参考お役立てになれば幸いです。
相見積もり歓迎
データの取り込み・変換は、8万円〜から始められます
- データ変換の仕組みは8万円〜(税別)が参考価格です
- 取り込んだデータの集計レポートは12万円〜(税別)です
- Excelでは無理のある処理なら、その旨を正直にお伝えします
セルネッツでは相見積もりを歓迎しています。料金は基本料金50,000円に、要件定義・設計・開発の時間単価を加えた体系です(税別)。必要な機能だけに絞ったご提案も可能です。システム導入相談やセカンド・オピニオンも、60分無料で承ります。
\Excel専門特化 × 低価格 × スピード対応/
全国対応・お見積もり無料