KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel のリストに基づいて、ファイルをあるフォルダーから別のフォルダーにコピーまたは移動するにはどうすればよいですか?

著者Xiaoyang変更日

ワークシートの列にファイル名のリストがあり、これらのファイルがコンピューター内のフォルダーに保存されているとします。しかし今、スクリーンショットのように、リストに記載されたファイルを元のフォルダーから別のフォルダーへ移動またはコピーする必要があります。この作業をExcel でできるだけ迅速に完了するには、どうすればよいでしょうか?

VBA コードを使用して、Excel のリストに基づきファイルをあるフォルダーから別のフォルダーにコピーまたは移動する

リストに基づいてファイルをあるフォルダーから別のフォルダーにコピーする


VBA コードを使用して、Excel のリストに基づきファイルをあるフォルダーから別のフォルダーにコピーまたは移動する

ファイル名のリストに基づいてファイルをあるフォルダーから別のフォルダーに移動するには、次の VBA コードが役立ちます。以下の手順に従ってください。

1.Excel でAlt + F11キーを押すと、Microsoft Visual Basic for Applicationsウィンドウが開きます。

2挿入>モジュールをクリックし、表示されるモジュールウィンドウに次の VBA コードを貼り付けてください。

VBA コード:Excel のリストに基づいてファイルをあるフォルダーから別のフォルダーに移動する

Sub movefiles()
'Updateby Extendoffice
    Dim xRg As Range, xCell As Range
    Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog
    Dim xSPathStr As Variant, xDPathStr As Variant
    Dim xVal As String
    On Error Resume Next
    Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xSFileDlg.Title = " Please select the original folder:"
    If xSFileDlg.Show <> -1 Then Exit Sub
    xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\"
    Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xDFileDlg.Title = " Please select the destination folder:"
    If xDFileDlg.Show <> -1 Then Exit Sub
    xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\"
    For Each xCell In xRg
        xVal = xCell.Value
        If TypeName(xVal) = "String" And xVal <> "" Then
            FileCopy xSPathStr & xVal, xDPathStr & xVal
            Kill xSPathStr & xVal
        End If
    Next
End Sub

3.その後、F5キーを押してこのコードを実行すると、ファイル名を含むセルを選択するよう促すダイアログボックスが表示されます(下記スクリーンショット参照)。

ファイル名を含むセルを選択する

4.次に、OKボタンをクリックし、表示されたウィンドウで移動元のファイルが含まれるフォルダーを選択してください(下記スクリーンショット参照)。

移動元のファイルが含まれるフォルダーを選択する

5.次にOKをクリックすると、別のウィンドウが表示されるので、ファイルを配置したい移動先フォルダーを選択してください(下記スクリーンショット参照)。

ファイルを配置する宛先フォルダーを選択する

6.最後にOKをクリックしてこのウィンドウを閉じると、ワークシートリストのファイル名リストに基づき、指定した別のフォルダーにファイルが移動されます(下記スクリーンショット参照)。

ファイルは別のフォルダーに移動されました

注記:ファイルを別のフォルダーにコピーする際に、元のファイルをそのまま残したい場合は、以下の VBA コードをご利用ください。

VBA コード:Excel のリストに基づいてファイルをあるフォルダーから別のフォルダーにコピーする

Sub copyfiles()
'Updateby Extendoffice
    Dim xRg As Range, xCell As Range
    Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog
    Dim xSPathStr As Variant, xDPathStr As Variant
    Dim xVal As String
    On Error Resume Next
    Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xSFileDlg.Title = "Please select the original folder:"
    If xSFileDlg.Show <> -1 Then Exit Sub
    xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\"
    Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    xDFileDlg.Title = "Please select the destination folder:"
    If xDFileDlg.Show <> -1 Then Exit Sub
    xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\"
    For Each xCell In xRg
        xVal = xCell.Value
        If TypeName(xVal) = "String" And xVal <> "" Then
            FileCopy xSPathStr & xVal, xDPathStr & xVal
        End If
    Next
End Sub
kutools for excel AI のスクリーンショット

KUTOOLS AI でExcel の魔法を解き放ちましょう

  • スマート実行:セル操作、データ分析、チャート作成をすべてシンプルなコマンドで実現します。
  • カスタム数式:ワークフローの効率化に役立つ、あなただけのカスタマイズ数式を生成します。
  • VBA コーディング:VBA コードを簡単に記述・実装できます。
  • 数式の解釈:複雑な数式が簡単に理解できます。
  • テキスト翻訳:スプレッドシート内で言語の壁を乗り越えましょう!
AI 搭載のツールでExcel の機能をさらに強化しましょう。今すぐダウンロードして、これまでにない効率を体験してください!

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート間 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストをすばやく作成     連動型ドロップダウンリスト     複数選択可能なドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的関数誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)さらに多数
Kutools はお好みの言語でご利用いただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。


Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得