2017-05-26 10 views
0

ボタンに割り当てるコードを書きました。ボタンが押されると、新しいワークブックが作成され、新しいファイルを保存する場所がユーザーに尋ねられます。VBA Excel - ユーザーがGetSaveAsFilenameのポップアップボックスをキャンセルしたときにサブを終了する

ユーザーがキャンセルをクリックすると、新しいブックを閉じてサブを終了することを確認します。

私は以下のように記述しましたが、より良いコードを書く方法はわかりません。私はifが改善できることを知っています。あなたが好きな細かい作業

Option Explicit 

Sub Create_a_new_workbook_and_save_it() 

Dim xlPath As String 

Workbooks.Add 

Application.DisplayAlerts = False 

xlPath = Application.GetSaveAsFilename(Title:="Select where you want to save your file") & "xlsm" 

If xlPath = "Falsexlsm" Then 
    ActiveWorkbook.Close 
    Exit Sub 
End If 

ActiveWorkbook.SaveAs _ 
    Filename:=xlPath, FileFormat:=52 

Application.DisplayAlerts = True 

End Sub 
+0

あり、それがあるとして 'If'文を使用すると、特に何も間違ってはいませんが、あなたがするまで' Workbooks.Add'をしない場合** ** If'の後に 'If'の中に' ActiveWorkbook.Close'をする必要を避けることができます。 – YowE3K

+0

@ YowE3Kあなたは絶対に正しいです。ありがとう:) – Marshall

答えて

0

上記のコード....

+0

私は別の形のif文を書き直すことができると思った。私は、 'xlPath'を使う代わりにそれを書く方が良いと思います。 – Marshall

関連する問題