Excel VBA 質問スレッド №1561 (未解決)

シート内で指定されたフォルダを別フォルダにコピー

投稿者 : もんち     投稿日時 : 2023/09/12(Tue) 11:21:02     OS : Windows 11     EXCEL : Office 365
初心者質問で申し訳ありません

セルに指定されたフォルダのみを、別フォルダにコピーしたいです。

(例)
フォルダA→ 1~500という名前のサブフォルダがあります。
フォルダB→移動先です。

Excelシート内
A列に、フォルダ名(1,3,10,17,,と縦並びに)が書かれています。それ以外の情報は何も書いてありませんが、便宜上必要なら列を増やすことも可能です。

A列にある名前をフォルダAに探しに行き、それをフォルダBに移動したいです。

スポンサーリンク
[返信 1] Re : シート内で指定されたフォルダを別フォルダにコピー
投稿者 : ヘンリー     投稿日時 : 2023/09/12(Tue) 11:32:42
FileSystemObjectについて調べてみて下さい。

[返信 2] Re : シート内で指定されたフォルダを別フォルダにコピー
投稿者 : higeru     投稿日時 : 2023/09/12(Tue) 11:37:32
 どのくらいの初心者かによりますが、ちょっとハードル高いかもね。

 https://tech-vb.com/excel_vba_under_the_folder_and_files_include_match_extension_files_copy

とかが参考になるかと。もちろん FileSystemObject 使ってます。

[返信 3] Re : シート内で指定されたフォルダを別フォルダにコピー
投稿者 : さんこう     投稿日時 : 2023/09/12(Tue) 12:25:39
すでに適切な回答がついていますが、
参考になれば。

<vba フォルダ移動>
https://www.google.com/search?q=vba+%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E7%A7%BB%E5%8B%95

[返信 4] Re : シート内で指定されたフォルダを別フォルダにコピー
投稿者 : てらてら     投稿日時 : 2023/09/13(Wed) 13:51:07
こんにちは。

この手のプログラムは、フォルダの移動だけではなくて前処理も大事です。
パスが無い場合を想定しないとすぐにエラーとなります。

初心者で分からないかもしれませんが、短いコードなので調べながら理解してください。

Sub Macro()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    Dim i As Long
    Dim pathName As String
    Dim sendPath As String
    sendPath = ThisWorkbook.Path & "\フォルダB\"
    
    For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
        pathName = ThisWorkbook.Path & "\フォルダA\" & Cells(i, "A").Value
        
        If Dir(pathName, vbDirectory) = "" Then
            Debug.Print "失敗:" & pathName
        Else
            fso.MoveFolder pathName, sendPath
        End If
    Next i
    
    Set fso = Nothing
    
End Sub

当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2023-10-02 00:17:33 )
タイトルとURLをコピーしました