【VBA】VBAでブックを扱う方法!作成、保存と開閉、切り替えについて


今回は、VBAを使ってブックを扱う方法を見ていきます。
基本的な操作としては、作成・保存・開閉・切り替えがあるので、覚えてくださいね。
Excelの日々の作業を自動化したいと思ったことはありませんか?VBAを使えば、それが可能です。
今日は、VBAを使って新しいワークブックを扱う方法について解説します。
これを身につければ、Excel作業がより効率的になりますよ。
それでは、始めてみましょう!
ブックを作成する
まずは、新しいワークブックを作成する方法から見ていきましょう。
以下にそのVBAコードを示します。
Sub CreateWorkbook()
Dim wb As Workbook
Set wb = Workbooks.Add
End Sub
このコードは新しいワークブックを作成します。
新しいワークブックは既存のExcelアプリケーションインスタンスに追加されます。
ブックを保存する
新しいワークブックを作成したら、次はそれを保存します。
以下にそのVBAコードを示します。
Sub SaveWorkbook()
Dim wb As Workbook
Set wb = Workbooks.Add
wb.SaveAs "C:\temp\Sample.xlsx"
End Sub
このコードは新しいワークブックを作成し、指定したパス(ここでは “C:\temp\Sample.xlsx”)に保存します。
保存先のパスは適宜変更してください。
注意点として、パスが存在しない場合や、ファイルが既に存在する場合はエラーが発生する可能性があるため、事前にその点を確認しておくことを推奨します。
ブックを開く
既に作成されているブックを開く場合について見ていきます。
以下のコードをご覧ください。
Workbooks.Open Filename:="パス名"
ここで、”パス名” は開きたいブックの完全なパス名(ブック名を含む)を指定します。
Openを使うことで、既にあるブックを開くことができます。
ブックを閉じる
一方、開いているブックを閉じるには次のようなコードを使います。
Workbooks("ブック名").Close SaveChanges:=False
ここで、”ブック名”は閉じたいブックの名前を指定します。SaveChangesパラメータをFalseに設定すると、変更を保存せずにブックを閉じることができます。
ブックの切り替え
2つ以上のブックを開いている場合、VBAを使用してブック間を切り替えることができます。ブックを切り替えるには、Activateメソッドを使います。
Workbooks("ブック名").Activate
ここで、”ブック名”は切り替えたいブックの名前を指定します。
まとめ
VBAを使用すると、Excelワークブックを自由に動かすことが可能です。
大量のデータを扱う場合や、定型的なレポートを作成する場合などに非常に有効で、自動化したり、業務を効率的に行うために役立ちますね。
しかし、エラー処理やデバッグなど、一部難易度の高い部分もありますので、継続的な学習と実践を行なって自分のものにしていってください。

VBAを体系的に学びたい場合、本で学ぶことをお勧めしています。
kindle unlimited(キンドルアンリミテッド)であれば、いくつかのVBA関係の本を無料で読むこともできますよ。