![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんにちは。
フォルダのコピーをVBスクリプトを使って出来ないか検討しています。
条件は
1. コピーするフォルダにはファイルやサブフォルダが複数存在している
2. コピー途中でエラー(コピー出来ないファイルがあった場合等)が発生した場合はそのファイルをスキップして処理を継続する。
3. エラーの対象となったファイルまたはフォルダ名をログに出力する。
試しにVBスクリプトで作成してみましたが、これだとコピー処理が成功or失敗しか分かりません。
イメージ的には、コピー元のフォルダ内の各ファイルの情報を取得して、ひとつひとつのファイル毎にループ制御を使ってコピー処理を行いその際に正常にコピーしたかどうかをチェック出来ればと考えています。
以下のソースは上記の条件を満たしていませんが、(参考になりませんが)参考として載せました。
スクリプトはまだまだ未熟なので、よろしくお願いします。
'エラーが発生しても次のステップに進むための宣言
On Error Resume Next
'FileSystemObjectオブジェクトを作成
Set objFS = CreateObject("Scripting.FileSystemObject")
'WScript.Shellオブジェクトを作成
Set objShell = CreateObject("WScript.Shell")
'ログファイルの作成
set strLog = objFS.CreateTextFile("C:\Errlog.log", True)
'フォルダコピー
If objFS.FolderExists("c:\aaa") = False Then
objFS.CreateFolder("c:\aaa")
objFS.copyFolder "c:\aaa", "c:\bbb"
If Err.Number <> 0 Then
MsgBox(Err.Number & " " & Err.Description)
End If
strLog.WriteLine "コメント"
Else
objFS.copyFolder "c:\aaa", "c:\bbb"
strLog.WriteLine "コメント"
End If
No.1ベストアンサー
- 回答日時:
個々のファイル、サブフォルダごとにエラーを判定したいのであれば、お考えのとおり、個々のファイル、サブフォルダごとにCopyFileメソッドとCreateFolderメソッドを使うしかありません。
FilesコレクションとFoldersコレクションの例を見て下さい。VBScriptの方は関数名があやしいものがありますが。
http://msdn.microsoft.com/library/ja/default.asp …
http://msdn.microsoft.com/library/ja/default.asp …
サブフォルダは再帰的に扱うとよいでしょう。下記が参考になると思います。
http://www.atmarkit.co.jp/fwin2k/operation/wsh11 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
同じファイル名 上書きしないフ...
-
最新更新日のBATファイルコピー...
-
マインクラフトPCをプレイしよ...
-
frxファイルの役目
-
ワード 一部のページだけをpdf...
-
複数フォルダ内のファイルを一...
-
ファイルをコピーできない
-
バッチでサブフォルダ内のファ...
-
コマンドプロンプトで、指定し...
-
任意のファイルを別のファイル...
-
エクセルVBAで開いているファイ...
-
「ファイルが見つかりません D...
-
FSO.CopyFileでのエラー無視方法
-
エクセルで複数のコメントのサ...
-
[C#]Excelファイルをコピーする...
-
指定されたフォルダにファイル...
-
使っている外付けHDDが最近不調...
-
mp3のコピー制限
-
フォルダコピーで失敗したファ...
-
ファイルサーバ上のファイルが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで複数のコメントのサ...
-
エクセルのハイパーリンクがコ...
-
frxファイルの役目
-
バッチファイル XCOPYで上書き...
-
Vba初心者です。下記のコード助...
-
Excelのマクロについて教えてく...
-
エクセル2010、図が大きすぎま...
-
バッチファイル 別ファイルにリ...
-
[エクセル]コピーするとオブジ...
-
エクセルVBAで開いているファイ...
-
パワポでスライドをコピーでき...
-
ファイルサーバ上のファイルが...
-
xcopyでのバッチコピー方法でコ...
-
Excelのマクロについて教えてく...
-
FTPとファイルコピーの違いにつ...
-
Excelのマクロについて教えてく...
-
バッチファイルのコピーで
-
bat 同名ファイルコピー時にリ...
-
アクセス クエリを別のファイ...
-
同じファイル名 上書きしないフ...
おすすめ情報