集中するためにやっていること

すみません。コピー後のファイルが存在していた場合は、古いファイルは上書きされます。とは、コピー元のパスとコピー後のパスが同じ場合という事でしょうか?手動で、excelファイルをドラッグ&ドロップするときに同じデータがある場合、確認表示がありますが、この場合とは、少し違って確認表示をされずに、ExcelVBAでは、直接上書き保存されるという事でしょうか?つまり、確認表示無し版のドラッグ&ドロップ(既に、USBメモリー何かにExcelファイルが存在する場合)という事でしょうか?教えて頂けると幸いです。

A 回答 (3件)

パス名が異なってたら別物ですよ。


ファイルはファイル名だけでアクセスしてる訳では無く、パス名+ファイル名でアクセスする事が必要です。

画面上ではファイル名だけで操作してる様に見えても、裏で動いてるプログラムはパス名+ファイル名で処理してます。

確認表示するかしないかは、プログラムを作る人が決めてるだけの事です。

vbaの命令説明で、「コピー後のファイルが存在していた場合は、古いファイルは上書きされます」と書いて有ったら、そのままその命令コードを書いたら上書きされるだけです。

確認応答メッセージを出してyes/noを入力させたいなら、ファイルの存在確認を行なって、メッセージを出す様なvbaプログラムを自分で組む。
    • good
    • 0

>コピー元のパスとコピー後のパスが同じ場合という事


正確には 「コピーしようとして(パスを含めて)新しいファイル名をつけようとしたが その(パスを含めて)ファイル名と同じファイルがすでに存在していた」ということです。(この違いが判りますか? わかんねんだろうなぁ。 だからあなたにはコンピュータの仕事は向いてないのですよ。)

対策としては 上書きする前に「同じファイルがあります 上書きしていいですか?」と聞いて[いいえ]なら「新しいファイル名を入力してください」と聞いて その名前にする(その名前も存在判定はすること)ということになります。

コンピュータのプログラムを組むときには このようなイレギュラーな事態に備えて ちゃんと対策するかどうかが よいプログラムの鍵 になります。それができない奴がプログラムすると場合によっては飛んでもない事が起きます。
    • good
    • 0

上書きされます。


防ぎ方として
https://www.moug.net/tech/exvba/0060075.html
の「■上書きコピーを確認する」などがあります。
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A