|
> 新規ブックを作成したとき、すでに同じ名前のブックがあった場合
> (同じ日に2回ブックを作成した場合)、上書きの警告が表示されます。
> この時に『いいえ』または『キャンセル』を押してもエラーにならないように
> したいのです。
でしたら、同名Fileが存在するか否かを事前に確認してやればいいでしょう。
FileSystemObjectのFileExistsを使用する方法がお勧めです。
> このエラー以外のエラーも各エラーごとに固有のメッセージを返したいと
> 考えておりますので、できればOn Error Go Toは使いたくありません。
Error Codeで分岐すればいいだけの話では?
Debug.Print Err.Number
SaveAs Method(に限らずFile操作)では、
Errorが発生する理由はいろいろあります。
(たとえば、必要なAccess権がない、Mediaが読み取り専用、
必要な空き容量が足りない・・・etc)
同名Fileが存在するというのは、その一例に過ぎません。
もし、安易にError Trapを使用しないほうがよいと参考書等に
書いてあったからといって、それを鵜呑みにしているのであれば、
それはさっさと捨て去ることをお勧めします。
VBAで完全に(Processが)停止するErrorなんて少数なので、
Error Trapを積極的に利用したほうがいいと思います。
ただし、どういった原因でErrorになるのかは
調べておいてください。
(参考書等に書いてある安易に使うべきではないと言うことは
こういうことです。)
また、Debug時はCommentOutしておきましょう。
|
|