HOME > エクセルVBA > ブックの操作

ブックの操作

 エクセルVBAの基本操作の一つ、ブックの操作を説明します。そんなに複雑なことはありませんが、必要な操作なのでマスターしておきましょう。

新規ブックの作成

 新規ブックはWorkbooksコレクションに対してAddメソッドを利用します。1行のプログラムでブックは開きます。

 Workbooks.Add

保存場所を特定してブックを開く

 保存されているブックを開くにはWorkbooksコレクションに対してOpenメソッドを利用します。ブックの場所はドライブから指定する必要があります。しかしフォルダがカレントフォルダにある場合はファイル名を指定するだけでブックを開くことが出来ます。

 Workbooks.Open FileName:="C:¥Users¥yoshi¥Documents¥aaa.xls"

 ファイル「aaa.xls」がカレントフォルダにあれば、次のように書くことが出来ます。

 Workbooks.Open FileName:="aaa.xls"

*カレントフォルダとは現在指定されているフォルダの事で、エクセル2003の場合はデフォルトでマイフォルダに設定されています。

ブックを閉じる

 WorkbooksコレクションにたいしてCloseメソッドを使用すると、現在開いているブックをすべて閉じることが出来ます。

 Workbooks.Close

 単体のブックのみを閉じたい場合はWorkbookオブジェクトに対してCloseメソッドを使うことになります。Activeworkbookは現在操作対象になっているブックの事をあらわしています。

Activeworkbook.Close

 単体でもアクティブブック以外のブックを閉じることも出来ます。閉じたいブックのファイル名を指定してCloseメソッドを使うことになります。

 Workbooks("aaa.xls").Close

ブックを保存して閉じる

 ブックを閉じる操作をすると、保存するのか?しないのか?確認メッセージが現れます。しかし、保存するのか、しないのか、決まっている場合はVBA上で指定して、確認メッセージを表示させることなく、ブックを閉じることが出来ます。

 CloseメソッドのSaveChangesの引数、True,Falseを指定することで確認メッセージを回避できます。

 Workbooks("aaa.xls").Close SaveChanges:=True ←自動で保存して閉じます。

 Workbooks("aaa.xls").Close SaveChanges:=false ←保存せずに閉じます。

ブックの上書き保存

 最後にブックの保存について説明します。ブックを保存するときはSaveメソッドを使用します。また、名前をつけて保存する場合はSaveAsメソッドを使用します。

アクティブなブックを上書き保存する場合

Activeworkbook.Save

ブック名を指定して保存する場合

 Workbooks("aaa.xls").Save

場所を指定して保存する場合

 Activeworkbook.SaveAs Filename:="C:¥Users¥yoshi¥Documents¥aaa.xls"

カレントフォルダの場合はファイル名だけ指定すればよい

Activeworkbook.SaveAs Filename:="aaa.xls"

コンテナとコレクション  エクセル職人  シートの操作1

▲TOPへ移動