電子書籍の厳選無料作品が豊富!

Dosでバッチを作っています。
あるフォルダ内に複数のExcelファイルがあり、それを別のフォルダにコピーしようとしています。

ただ、このコピー元のフォルダにはExcel2007のファイルも含まれている為、拡張子がxlsとxlsxの2種類が存在します。
コピーしたいのは、xlsのファイルだけにしたいのですが、どのようにすればいいのでしょうか?


copy コピー元のパス\*.xls コピー先のパス /Y

これだとxlsとxlsxの両方がコピーされてしまう。

A 回答 (2件)

「そんなはずないよなぁ」と思ったら, 短いファイル名もヒットしちゃうのか.


えぇと, コピー先に何かファイルがあっても強制的に上書きしちゃっていいんですね?
ん~, 「ど~しても copy じゃないといや」というのならさしあたり何ともなりませんが, そうでないなら xcopy なり robocopy なりで対処できるような気がする.
xcopy なら
.xlsx
という内容のファイル exclude.txt を用意して
xcopy コピー元のパス\*.xls コピー先のパス /Y /EXCLUDE:exclude.txt
robocopy なら
robocopy コピー元のパス コピー先のパス *.xls /XF *.xlsx
のような感じか? ああ, 念のため無保証でお願いします.
    • good
    • 0
この回答へのお礼

robocopy。
こんなものが有ったとは・・・。
現在、XPを使っていますが、2003用のkitで動かすことができました。
ありがとうございました。

お礼日時:2010/02/24 23:59

前後にダブルクオーテーションを付けたらどうでしょうか?



copy "コピー元のパス\*.xls" "コピー先のパス" /Y


もしこれでもダメなら、コピー完了後にコピー先のパスからxlsxが付くファイルを削除するという手もあります。

copy "コピー元のパス\*.xls" "コピー先のパス" /Y
del "コピー先のパス\*.xlsx"

いかがでしょうか?
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
ダブルクオーテーションを付けてみたのですが、やはりダメでした。

やはりコピー後にxlsxファイルを削除するという方法しか無いのでしょうか?

お礼日時:2010/02/24 10:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!