注目キーワード
  1. VBA
  2. 関数
  3. ショートカット

シートやブックの指定・操作方法を知ろう!⑥

  • 2019年3月18日
  • VBA
  • 17回
  • 0件
VBA NO IMAGE

①ブックを閉じる

開いているブックを閉じる方法を紹介します。変更を加えたブックを通常の操作で閉じる場合は、保存するかどうかを確認されます。VBAでは、保存して閉じるか保存せずに閉じるかを、引数で指定することが可能です。

・ブックを保存して閉じる

ブックを保存して閉じたい場合は、対象のブックを表すWorkbookオブジェクトCloseメソッドで、引数SaveChamgesにTrueを指定します。また保存せずに閉じる場合はCloseメソッドの引数SaveChangesメソッドにFalseを指定します。

・実行結果

 

・閉じるときに保存するかどうかを確認する

Closeメソッドの引数SaveChangesの指定を省略し、変更されたブックを閉じようとすると、保存を確認するダイアログボックスが表示されます。ここで「はい」または「いいえ」ボタンで、ブックを閉じる前に保存するかしないかを指定します。「キャンセル」をクリックすると、ブックを閉じる操作自体がキャンセルされます。

・実行結果

 

・Excelを終了する

Excel自体を終了するには、Excelアプリケーションそのものを表すApplicationオブジェクトのQuitメソッドを実行します。変更したブックがある場合には、保存するかどうか確認されます。

②ブックを開く

ハードディスクなどに保存されているブックのファイル名を指定し、Excelで作業できるように開く方法を紹介します。開く前のブックはVBAのオブジェクトとして扱えませんが、開くことによってWorkbookオブジェクトとして操作が可能になります。

・ファイル名を指定して開く

ブックを開くには、開かれているんすべてのブックの集合を表すWorkbooksコレクションのOpenメソッドで、引数Filenameに開きたいファイル名を指定します。ファイル名は「C:」などのドライブ名から始まる絶対パスで指定するのが確実です。パスを省略してファイル名だけを指定した場合は、既存のファイル保存用フォルダ―か、ファイル操作のダイアログボックスで最後に表示したフォルダ―にあるファイルと判断されます。

次の例は、ドキュメントフォルダーにあるファイルを開きます。開くファイルのパスとファイル名は、適宜変更してくだい。

・実行結果

 

・開いたブックを操作する

WorkbooksコレクションのOpenメソッドは、戻り値として、開かれたブックを表すWorkbookオブジェクトを返します。戻り値を取得して利用する場合、Openメソッドの引数はカッコで囲んで指定します。次の例は、既存のフォルダ―に保存されている指定したブックを開き、その先頭のシート名をメッセージボックスに表示します。

・実行結果

 

③特定の場所にあるブックを開く

ファイルとして保存されたブックを開く方法の応用として、目的のファイルがあるフォルダーを特定する方法をいくつか紹介します。

・作業中のブックと同じ場所にあるブックを開く

現在表示している作業しているブックを表すWorkbookオブジェクトは、ActiveWorkbookプロパティで取得できます。また、そのブックが保存されたフォルダ―のパスを表す文字列は、Pathプロパティで求めることができます。

 

・現在のブック名と一部異なるブックを開く

現在「売上4月度.xlsx」で作業をしていて「売上5月度.xlsx」を開きたい場合は、作業中のブックと名前が一部だけ異なるブック名を指定して開く方法もあります。まずWorkbookオブジェクトのFullNameプロパティでアクティブなブックのドライブ名から途中のすべてのフォルダ―名、ファイル名まで含む絶対パスの文字列を求めます。そして、VBAのReplace関数で文字列の「4月」を「5月」に置換し、WorkbooksコレクションのOpenメソッドの引数Filenameに指定します。

・実行結果

NO IMAGE
最新情報をチェックしよう!