Tips

【ExcelVBAベーシック】ブックに名前をつけて保存する【練習問題】

【ExcelVBAベーシック】ブックに名前をつけて保存する【練習問題】

ExcelVBAベーシックの試験範囲に関する練習問題を記載していきます。
勉強して得た知識が定着しているかを確認しましょう。
他の練習問題を見たい場合は練習問題一覧を押下し確認してください。

【問題】

新規作成したブックに「sample.xlsx」と名前をつけてデスクトップに保存するコードを記述してください。

【解答と解説】
※問題の要件を満たしていれば正解としてください。

新規作成したブックを名前をつけて保存するにはSaveAsメソッドを使います。
[code] ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\sample.xlsx"
[/code] 「xxx」にはユーザ名を記述してください。
「Filename:=」の記述は省略してもOKです。
デスクトップまでのパスと保存する際のファイル名(sample.xlsx)を続けて指定します。

▼記述したコード
[code] Sub sample()

Workbooks.Add
ActiveWorkbook.SaveAs "C:\Users\c.suzuki\Desktop\sample.xlsx"

End Sub

[/code]

▼実際に試したのがこちら

新規作成したブックに「sample.xlsx」と名前をつけてデスクトップに保存することができました。

さらに

上記で記述したコードだと2回めに実行した際、以下の確認メッセージが表示されます。

この確認メッセージで「はい」以外を押した場合、
SaveAsメソッドの操作が中断することになるのでエラーがでてしまいます。

どのボタンが押されるかはユーザ次第となってしまうため防ぐことはできません。
ですが、エラーを無視することはできるのでその処理を入れておくとベストです。
[code] On Error Resume Next
[code] On Errorステートメントはベーシックではなくスタンダードの出題範囲となります。
「On Error Resume Next」と書くことでエラーが無視される、というのだけおさえておいてください。

▼記述したコード
[code] Sub sample()

Workbooks.Add

On Error Resume Next
ActiveWorkbook.SaveAs "C:\Users\c.suzuki\Desktop\sample.xlsx"

End Sub
[/code]

▼実際に試したのがこちら

置き換えますか?と確認メッセージが表示されましたが「いいえ」を選択しましたところ
何もエラーは表示されなかったのが確認できました。


excel_VBAを学んで業務効率化!

excel-vba入門 連載

Recent News

Recent Tips

Tag Search