14歳の自分に衝撃の事実を告げてください

MS EXCELで「123.xls」というファイルがあり、
新規作成で名前を付けて保存で、「123.xls」という名前をつけようとしたとします。
そうすると、「ファイル'123.xls'は既に存在します。既存のファイルを置き換えますか?」というメッセージが表示されます。
このメッセージを表示させる事なく、
強制的に上書き保存するという事は可能なのでしょうか?
っというのも私自身は今まで疑問にも思わなかったのですが、
会社の同僚が疑問に思っていて、
私も「どんなことできるの?」と思ったので質問させていただきました。
EXCEL VBAや、他の手段で可能ならば教えて下さい。

A 回答 (4件)

手動での操作でしたらそのメッセージを出さなくすることは無理だと思います。



名前を付けて保存を、VBAでやるおつもりなら、その前に
Application.DisplayAlerts = False
の一行を挿入しておけば、警告は出なくなります。
ただ、そのままでは危険なので、
Application.DisplayAlerts = True
を後にかならず入れてもとにもどしておきましょう。
    • good
    • 1
この回答へのお礼

ありがとうございます。
こちらの方法で実現できました。

お礼日時:2006/03/20 11:17

>スケジュール管理を行っているACCESSデータベースにインポートさせたいらしいです。


Accessならそのままエクセルファイルをインポートするなり、リンクでは駄目なのでしょうか?
    • good
    • 0
この回答へのお礼

No.3さんのアドバイスで無事解決しました。
ACCESSへのインポートするCSVファイルを作成する際に、
毎回出るメッセージを非表示にしたかったらしいです。

お礼日時:2006/03/20 11:19

単純に上書き保存すればいいのでは?


確かにVBAを組めば可能ですが、#1の方のいわれるように
上書きしてはいけないケースの場合も上書きされるので、その時に後悔しても遅いですよ。

最近の質問でこんなのがありました。お探しのものにも使えるVBAのサンプルがあります。
『EXCEL VBA フォームクローズと同時にアプリも終了したい』
http://okwave.jp/kotaeru.php3?q=2032315

この回答への補足

何をしたいいのかが分かりました。
仕入一覧.xlsの必要な項目を、
仕入一覧.csvとして編集してから、
スケジュール管理を行っているACCESSデータベースにインポートさせたいらしいです。

仕入一覧.xlsで必要な項目をACCESSインポート用のcsvに変換するというのを数日(もしくは毎日)行うので、
その一連の作業をマクロで組もうとしているらしいです。
そして、ACCESSにインポートするcsvのファイルは、
「仕入一覧.csv」で決まっているのですが、
「仕入一覧.xls」から「仕入一覧.csv」に変換する際に前回作成した「仕入一覧.csv」が残っている為、
毎回警告されるメッセージを非表示にしたいとの事でした。

補足日時:2006/03/17 09:08
    • good
    • 0

最初から


『名前を付けて保存でなく』
メニューから『上書き保存』を選択すればよいのではないでしょうか・・

もしも強制的に他のファイルに上書き保存する方法があったら大事なファイルを誤って上書きしたりする危険があるのでは??

この回答への補足

私もそう思います。
新規作成したファイルの場合、
元からある123.xlsが違う目的をもって作成されている場合、
そのファイルを消してしまいますからね。
警戒を促しているわけで、このメッセージを出さずに強制的に上書きというのは危険ですよね?
同僚がどういった意図でそのような疑問を抱いているのか、再度確認したいと思います。
私自身は
(1)既にあるファイルの場合は、それを開いて編集して上書き保存。
(2)新規の場合はフォルダ内に存在しない名前を付けて保存。
が普通だと思っているので!
もしかすると、考えもしませんでしたが、保存方法として「名前を付けて保存」しか知らないのかもしれません。
「上書き保存」の存在を知っているのか確認してみます。

補足日時:2006/03/17 08:58
    • good
    • 0

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

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


おすすめ情報