dポイントプレゼントキャンペーン実施中!

いつも大変お世話になっております。
新規作成したBOOKを指定の場所に、指定の名前で保存しようとしています。

例)C:\ファイル名.xls
保存したいものの
sFileName="C:\ファイル名.xls"
WorkbookName="ファイル名.xls"

ActiveWorkbook.SaveAs Filename:=sFileName '保存して閉じる
Workbooks(WorkbookName & "_" & sNowTime & ".xls").Close SaveChanges:=True

上記のように設定したところ、
既にファイルがある場合はウィンドウが表示されます。
その際、MsgBoxにフルパスで表示されてしまい、大変見づらく困っています。

また、新規作成したブックは必ず上書き保存で良いものになっています。
C:\ファイル名.xls というものが既にある場合は、
メッセージを出さず、上書き保存にしたいと思っています。

下記のように、既にブックがあるかも確認したのですが、
違い?が良く分からず、上手くいきませんでした。

'======================使わない上に、プログラムが間違っているためコメントアウトしてます。=========--
'Dim buf As String
' buf = Dir(sFileName) 'ファイルの存在を調べる
' If buf <> "" Then
' '保存
' ActiveWorkbook.SaveAs Filename:=sFileName '保存して閉じる
'
' '=================ファイル作成完了
' Else
' ActiveWorkbook.SaveAs Filename:=sFileName '保存して閉じる
' Workbooks(WorkbookName & "_" & sNowTime & ".xls").Close SaveChanges:=True
' End If
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

質問内容がぐちゃぐちゃしてきたので、まとめさせて頂きます。
●新規ブックを指定場所に、指定名で保存したい
●指定場所に指定名のブックがあった場合、メッセージを出さずに上書き保存したい

です、よろしくお願いいたします。

A 回答 (1件)

とりあえず、確認のメッセージを表示させる、させないの切り替えができます。



Application.DisplayAlerts = False
’確認メッセージを非表示にする
ActiveWorkbook.SaveAs Filename:=sFileName '保存して閉じる
Workbooks(WorkbookName & "_" & sNowTime & ".xls").Close SaveChanges:=True
Application.DisplayAlerts = True
'確認メッセージを表示する(元に戻す)

といった感じで使います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
教えて頂いたプログラムで上手くいきました!

前同じように組んだつもりでしたが何故かエラーが出てました・・・
問題なくでき、良かったです!

お礼日時:2013/12/12 13:53

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