【VBA】ファイル名を変更するマクロの作り方・導入方法をご紹介

 

VBAを使ってファイル名変更作業を自動化したい!

こんな要望にお応えします

 

この記事では、大量のファイル名をまとめて変更するマクロの作り方、導入方法を詳しく解説しています。

 

Right Caption

拒否する人

ファイル名の変更くらい手作業でやれば?

 

このように考える方もいらっしゃいますが、ファイル名を変更する数が多くなればなるほど手間と時間のかかる作業となります。

 

VBAでファイル名の変更を自動化するマクロを設定してしまえば、手間と時間のかかる作業も一瞬で処理することができます。

 

  • ファイルを2回クリックしてファイル名を変更する
  • ファイルを選択して「F2」キーでファイル名を変更する

VBAを使えばこれらの面倒な処理を省略することが可能です。

 

Left Caption

疲れ果てた人

手作業でのファイル名変更はめちゃくちゃ苦手

 

ファイル名の変更作業が多い!という方にとっておすすめのマクロなので、是非この記事で作り方・導入方法をチェックしてみてください。

 

広告

 ファイル名を変更するマクロとは

 

ファイル名を変更するマクロとは、一覧表から好きなようにファイル名まとめて変更することができるプログラムのことです。

 

どのようなプログラムかというとこんな感じです。

「変更後のファイル名」を手入力した後、マクロ実行ボタンを押下するだけ。

たったこれだけで大量のファイル名を一瞬で変更することができます。

 

上図ではフォルダ名の名前をまとめて編集していますが、「エクセルファイル」「ワードファイル」「テキストファイル」あらゆる形式のデータを編集することが可能です。

 

ファイル名を変更するマクロの使い方

 

 

ファイル名を変更するマクロの使い方を図を使ってご紹介します。

 

1.現在のファイル名を取得し一覧を作成

 

フォルダの場所を記入し、「フォルダ名取得ボタン」を押下するだけでファイル名の一覧を作成することができます。

 

2.変更後のファイル名をC列に記入し、「フォルダ名変更ボタン」を押下

変更後のファイル名を記入後「フォルダ名変更」ボタンを押下すると、フォルダ名の変更処理が完了です。

 

ファイル名を変更するマクロの実行結果がこちら

 

大量のフォルダ名を一瞬で変更することができました。

 

「フォルダ名の変更」の他に、「エクセルファイル名の変更」「ワードファイル名の変更」「テキストファイル名の変更」を自動化するマクロを設定しています。

 

使い方は上記で解説している「フォルダ名の変更」と全く同じです。

 

Left Caption

ガッツポーズの人

いろんな形式のデータに対応しているのでめちゃくちゃ使える

 

ファイル名を変更するマクロの導入方法

 

 

ファイル名を変更するマクロの導入方法を図を使って解説していきます。

手順通りに操作すればVBA初心者の方でもきっとファイル名を変更するマクロをお使いのエクセルファイルに導入することができるはずです。

 

Left Caption

上を目指す人

ちょっと大変ですが是非挑戦してみてください。

 

様式の設定

 

  • D2セル:名前を変更したいファイルが保存されているフォルダ場所を記入する場所
  • A4セルから下:現在のファイル名を取得し一覧にする場所
  • D4セルから下:変更後のファイル名を記入する場所

様式設定では上記3つのポイントに気を付けてください。

 

ファイル名を変更するマクロの作成

1.VBA編集画面を開く

2.Moduleを作成する

 

3.Module1にVBAを作成する

 

4-1.ファイル名を取得し一覧にするマクロのコード

Sub フォルダ名取得()
    Dim FP As String
    FP = Cells(2, 4)
    Dim fl As FileSystemObject
    Set fl = New FileSystemObject
    Dim Fld As Folder
    Set Fld = fl.GetFolder(FP & "\")
    Dim FlName As Folder
    For Each FlName In Fld.SubFolders
    gyo = Cells(Rows.Count, 1).End(xlUp).Row
    Cells(gyo + 1, 1) = FlName.Name
    Next
    Set fl = Nothing
End Sub

 

4-2.ファイル名を変更するマクロのコード

Sub フォルダ名変更()
    gyo = Cells(Rows.Count, 1).End(xlUp).Row
    Dim fl As FileSystemObject
    Set fl = New FileSystemObject
    Dim ff As Folder
    Dim FP As String
    FP = Cells(2, 4)
    For i = 4 To gyo
    FoName = FP & "\" & Cells(i, 1)
    Set Flp = fl.GetFolder(FoName)
    Flp.Name = Cells(i, 3)
    Next
    Set Flp = Nothing
End Sub

 

Left Caption

ガッツポーズの人

2つのコードはそのままコピペしてお使い頂けます。

 

 

マクロ実行ボタンの作成

設定したマクロを実行するための「ボタン」を作成します。

 

1.ボタンの作成

 

2.マクロの登録

これで、ファイル名を変更するマクロの導入が完了です。

マクロの使い方で紹介している手順で操作をすればフォルダの名前をまとめて変更することができます。

 

「エクセルファイル名の変更」「ワードファイル名の変更」「テキストファイル名の変更」するマクロについては、導入方法はほとんど上記で紹介している方法と同じなのですが、使われているコードが少しだけ異なります。

 

下記のサイトでは、フォルダ名の変更に加えて「エクセルファイル名の変更」「ワードファイル名の変更」「テキストファイル名の変更」するマクロが設定されたエクセルファイルをダウンロードしてお使い頂くことが可能です。

 

気になる方は是非チェックしてみてください。

 

ファイル名を変更するマクロで仕事の効率アップ

 

ファイル名を変更するマクロはデスクワーク全般の効率をアップさせることが可能です。

 

勤めていた職場で実際にあった事例をご紹介します。

私が勤めていた会社は転勤が多く、

担当者か変わるとデータの保存の仕方がコロコロ変わってしまう!

という問題を抱えていました。

 

「前任の方が使っていたファイルはどこ?そもそもどのようなファイル名で保存しているの?」

 

Right Caption

ダウンする人

お目当てのファイルを探すだけでめちゃくちゃ時間がかかる。。

 

転勤して最初の仕事が、

使用頻度の高いデータを開いて片っ端から中身を確認する!

という非効率的なことをしなければならない状態でした。

 

こんな問題を解決するために開発したのが、ファイル名を変更するマクロです。

 

このマクロには、

大量のファイル名を一瞬で変更できる機能に加えて現状のファイル名と変更後のファイル名をリスト化することができる

というメリットがあります。

 

ファイル名の変更前と変更後がわかるリストがあれば「ファイル名を変えられて困る方が出てくる」という問題の発生を防ぐことができます。

 

職場全員にファイル名の変更を周知しつつ大量のファイル名をまとめて変更することができるので、

データ管理業務の効率をアップさせることができます。

 

Left Caption

ガッツポーズの人

転勤で担当者が変わっても問題なし

 

VBA初心者が効率化マクロを導入する方法

 

VBAなんて扱ったことないけどエクセル作業を自動化するマクロを導入したい!

このような問題を抱えながら日々のエクセル業務をこなしている方がおおくいらっしゃるのではないでしょうか。

 

こんな問題を解決する方法がこちら

  • マクロの開発を外注に依頼する
  • マクロが設定されたエクセルファイルをダウンロードする
  • 参考書やネットでVBAスキルを身に付ける

 

VBAの勉強を始める前は上記の方法で効率化マクロを導入していました。

 

 

 

完成されたマクロを使ってエクセル業務を処理する

作業効率が2倍以上アップ!!

便利すぎて自分でもマクロを設定したいと考え始める

参考書やネットの情報でVBAスキルを身に付ける

マクロ開発を代行できる程のスキルを習得

 

 

 

VBAは

他のプログラミングに比べて参考書やネットで紹介されている情報量が多いので初心者でも導入しやすい

という特徴があります。

 

毎日のルーティーン作業にうんざりしている、だれでもできる単純作業に時間を費やしている、という方はあなたに合った方法でVBAを導入しちゃいましょう。

 

マクロの開発を外注に依頼する

マクロの開発を外注に依頼する導入方法は

VBAを全く扱えない方でもエクセル作業を自動化できる最も簡単な方法

です。

 

「こんなエクセル作業を自動化したい」「作った資料を自動的にPDFで保存したい」「決まった様式に写真を自動で貼り付けたい」

こんな感じで実現したい内容を依頼するだけで業務内容に合ったマクロを開発してくれます。

 

Left Caption

ガッツポーズの人

完成まで本業に集中できるので効率的

 

 

デメリットは、費用がかかることだけ。

開発内容、依頼先によってかかる費用は大きく異なります。

私が会社員の頃利用していた業者さんは1マクロあたり2万円~3万円の費用がかかりました。

 

Left Caption

疑問がある人

ちょっと高くない。。。

 

ちなみに、マメBlogでもエクセルマクロ開発代行サービスを承っています。

開発内容の確認、VBAコードの設定、動作確認後の調整、など全ての工程を私(マメ父ちゃん)が行っているので、

費用が安い!スピード納期!!

でやらせてもらっています。

 

ほとんど独学で身に付けたVBAスキルなので、内容によっては開発できないこともあるのでご了承ください。

 

ご相談、見積もり依頼は完全無料ですので気になる方は下記のリンクよりお問合せ下さい。

 

 

マクロが設定されたエクセルファイルをダウンロードする

VBA初心者でも『マクロが設定されたエクセルファイルをダウンロード』ですぐにエクセル作業を自動化することができます。

 

たとえば、

A4用紙に写真を貼り付けてコメントを入力する作業を自動化したい!という場合、

『写真を貼り付けるマクロ』が設定されたエクセルファイルをダウンロードすれば問題解決です。

 

実際に、『写真を貼り付けるマクロ』をダウンロードして使っている様子がこちら

写真貼付けマクロの使い方を示したイラスト

 

 

Left Caption

ガッツポーズの人

写真貼付け作業の効率がめちゃくちゃアップ

 

 

『マクロが設定されたエクセルファイルをダウンロード』する導入方法は、

VBA初心者でもマクロを導入できる、費用が安い、

というメリットがあります。

 

しかし

VBAに関する情報が多く公開されているとはいえ、ネット上で想定するマクロは見つけることが難しい

というデメリットもあります。

 

Left Caption

ガッツポーズの人

お目当てのマクロが見つかればラッキー

 

個人ブログやファイルを販売できるサイト「note」や「Tips」ではいろんなマクロの情報が掲載されているので是非参考にしてみてください。

 

今までマメBlogで受注した効率化マクロを下記のnoteで掲載していますので併せてチェックしてみてください。

 

 

 

参考書やネットでVBAスキルを身に付ける

先程も紹介しましたが、

VBAは他のプログラミングに比べて参考書やネットで紹介されている情報量が多いので初心者でも導入しやすい

プログラミングです。

 

言い換えると、

情報量が豊富なので自分で勉強できちゃう

ということです。

 

私のVBAスキルはほとんど独学で身に付けたもので、

考えた処理のほとんどをVBAで表現できるレベルにまで到達した!

と思っています。

 

私の作ったマクロをプロのプログラマーが見れば、

お前の書くコードはインチキだ!「変数の宣言」とか「引数」を正しく使えよ!!

と感じるはずです。

 

でも、

私からすればどうでもいい!!!想定した内容を正しく処理できればよくないですか!?

 

独学であっても『写真を貼り付けるマクロ』『全てのシートをPDF出力するマクロ』『連番を振るマクロ』など、

業務内容に合ったマクロを開発できるようになれます。

 

独学でVBAスキルを身に付けるコツは、

エラーが発生してもいいからひたすらコードを書く、なんでもいいからエクセル作業をマクロ化してみる

です。

 

とは言っても、全くの知識0の方は何をすればいいかわからないですよね。

 

VBA知識0の初心者の方は、参考書『たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】』を読んでみてください。

 

VBAの知識0の方でもすいすい読み進められる内容になっています。

やさしい内容にも関わらず「え!!VBAを使えばこんなことできるの!?」と感動すると思います。

 

実際に私はこの参考書を読んでからVBAの勉強を始めました。

 

Left Caption

ひらめく人

VBA学習スタートのきっかけをくれた参考書


 

 

VBAの魅力を発見した後は、

ひたすら自動化したい処理を実現するコードを書くだけ

です。

 

【VBA 写真を貼る】、【VBA PDF出力】、のようにネット検索すれば知りたいコードをすぐにゲットできます。

 

実現したい処理に向かって、「調べる→書いてみる→エラーを改善する→調べる」を繰り返していると

自然といろんなマクロが作れるようになっているはずです。

 

VBAに興味が湧いてきたという方は今からVBA学習をスタートさせちゃいましょう。