パソコンのフォルダに保存されているファイルの名前をExcelのワークシートに貼り付けて一覧表にしたい時はどうしていますか?
エクスプローラーでフォルダを開いて横に並べた状態でひとつひとつ入力するのは手間がかかりますし、見ながら入力では文字の打ち間違いをしてしまうリスクもあります。
「名前の変更」でファイル名を編集可能な状態にし、名前をコピー>貼り付けするという方法もありますが、ひとつふたつであればともかく、数が多いと時間も労力もかかって大変ですよね。
そのような時は、Windows10の機能「パスのコピー」でファイル名を取得し、ワークシートに貼り付けしてから不要な部分を置換で削除するのが簡単です。
※解説画像:エクスプローラーはWindows10 Home バージョン21H2、ExcelはMicrosoft365を使用しています。
ファイルのパスを取得してシートに貼り付ける
まず、エクスプローラーで名前を取得したいファイルが保存されているフォルダを開いておきます。拡張子は表示・非表示どちらでも構いません。
名前を取得したいファイルをすべて選択します。
連続した複数のファイルを選択する場合は、先頭のファイルをクリックして選択したあと、Shiftを押しながら最後のファイルをクリックします。
飛び飛びのファイルを選択するのであればCtrlを押しながら目的のファイルをクリックしていきましょう。
フォルダ内のすべてのファイルを選択したいならCtrl+Aのショートカットを使うと簡単です。
選択した中で先頭にあるファイルの上にマウスポインターを合わせます。
マウスポインターの位置はそのままで、Shiftキーを押しながら右クリックし、メニューが表示されたら「パスのコピー」をクリックします。
Excelのワークシートで貼り付けしたい位置にカーソルを置き、[ホーム]タブの「貼り付け」ボタンのアイコン部分をクリックして貼り付けします。もしくはCtrl+Vのショートカットキーで貼り付けても大丈夫です。
先ほどエクスプローラーでコピーしたファイルのパスが貼り付けられました。(拡張子はエクスプローラーで非表示にしていても、パスの方にはちゃんと表示されます)
ちなみに、「パスのコピー」をすでにご存知の方から『毎回貼り付けた時にファイルの順番がおかしくなってしまうのだけど・・・』とご相談をいただく事があるのですが、それはShift+右クリックする時のマウスポインターの位置が原因として考えられます。
ファイルのパスはShift+右クリックした時にマウスポインターが置かれていたファイルを先頭に上から下に向かって順番にファイル名を取得する動きになります。仮に先頭ではなく真ん中らへんにマウスポインターを置いてShift+右クリックの操作を行ってしまうと、その位置を先頭に順番に名前が取得されることになります。(一番下まで行ききると、先頭に上がって残りを上から順番に取得します)
おそらくファイルの名前を取得したい場面では、フォルダに表示されている順番は崩さずにそのまま名前を取り出したいとお考えになる事の方が多いと思います。「マウスポインターは先頭に置いてShift+右クリックする」という事を意識して操作してみてください。
置換でファイル名以外の不要な部分を削除する
今回欲しいのはパス(Windows上でファイルの保存場所を表す住所みたいなもの)ではなくファイルの名前のみ(下図でいうと赤点線枠で囲んだ部分)になりますので、「置換」を使って不要なパス部分を削除します。
[ホーム]タブの「検索と選択」⇒「置換」を順にクリックし、「検索と置換」ダイアログボックスを開きます。(ショートカットキーで開きたい方はCtrl+Hです!)
「検索する文字列」のボックスに半角で「*\」(アスタリスク、円記号)と入力します。「*」はあいまい検索を行う時によく利用する記号で、文字種や文字数問わず何でも拾ってきてくれます。つまりこの場合は\の左にある文字全部が検索対象、という意味になります。
「置換後の文字列」のボックスには何も入れないでおきます。
日本語入力オフの状態で、「*」は「け」のキーをShiftを押しながら押します(テンキーのあるキーボードであればテンキー上段にあります)。
「\」は一般的な109・106キーボードであればキーボード上段の「へ」のキーの右隣りにありますのでそのまま押しましょう。
[すべて置換]をクリックします。
パス部分が削除され、ファイル名だけが残りました。
コピーしたパスをExcelのシートに貼り付けると、1つのセルに1行ずつ入ってくれますので、このまま体裁を整えればすぐにファイルの一覧表が作成できます。
また、同じ要領でフォルダ名を取得することも可能です。あるフォルダの下に複数の子フォルダがあり、それらのフォルダ名をいっぺんに取り出したい時などにも活用してみてください。
補足
コピーしたパスをWord、PowerPointなどに貼り付けた場合の違い
エクスプローラーで「パスのコピー」を実行後、ExcelではなくWordのページやPowerPointのプレースホルダーに貼り付けることも可能ですが、Word・PowerPointでは下図のようにパスの前後に「”」(ダブルクォーテーション)がついてしまうため、不要なパス部分に加えて「”」も削除する必要が生じます。
Excelではシートにパスを貼り付けた際に「”」は無視するようになっていますので、何だかんだと一番扱いやすいのではないかと思います。
フォルダを開かずに中にあるファイルの名前を取得したい時の小技
エクスプローラーの検索技を使うことで、フォルダを開かずに中に保存されているファイル名を表示して名前を取得することもできます。最後に簡単ではありますが、そのやり方を書いておきます。
下図の例は、「操作説明資料」というフォルダを開き、「関連資料」と「機器操作画像」という2つの子フォルダを表示している状態です。それぞれの子フォルダには複数のファイルが保存されているのですが、それらのファイルの名前を全部取り出したい!という場面を想定しています。
もちろん、この2つの子フォルダをひとつずつ開いて先の方法で「パスのコピー」を行っても良いのですが、もしいっぺんにやれるのなら手間が軽減できて良いですよね。
では、検索技を使って中のファイルを表示してみましょう。
エクスプローラーのリボンのすぐ下にあるアドレスバーの右側に虫眼鏡マークのついた検索ボックスがありますので、ボックス内をクリックしてカーソルを表示します。
検索ボックスに半角で「*」(アスタリスク)をひとつ入力します。
打ち終わったらEnterキーを押すか、検索ボックス右側に表示された右向き矢印をクリックして検索を実行します。
すると、フォルダウィンドウ内に表示されていた2つの子フォルダの下に、子フォルダに入っていたファイルが一覧で表示されます。
検索直後は上の画像のように「コンテンツ」の表示になっていると思いますが、[表示]タブをクリックし「一覧」や「小アイコン」「詳細」など任意で表示方法を変更できます。また、[表示]タブの「現在のビュー」グループにある「並べ替え」をクリックすると任意の項目で並べ替えをすることもできます。必要に応じて操作してください。
あとは、フォルダを除いてファイルだけをすべて選択し、先ほどと同じ要領で「パスのコピー」を行い、シートに貼り付け⇒置換で不要なパス部分を削除しましょう。
パスのコピーが終わったら、エクスプローラーは[検索]タブにある「検索結果を閉じる」ボタンをクリックし、通常の状態に戻しておきましょう。