Excel VBAで複数ファイルを扱うための環境設定まとめ(保存形式・互換性)
生徒
「Excel VBAで、たくさんのExcelファイルをまとめて操作できるって聞いたんですが、本当ですか?」
先生
「はい。Excel VBAを使うと、複数のExcelファイルを自動で開いたり、保存したりできます。」
生徒
「でも、保存形式とか設定を間違えると動かないって聞いて不安です……」
先生
「大丈夫です。最初に環境設定のポイントを押さえれば、初心者でも安心して扱えますよ。」
Excel VBAで複数ファイルを扱うとはどういうことか
Excel VBAで複数ファイルを扱うとは、 一つのExcelファイルから、別のExcelファイルを開いたり、 中身を確認したり、保存したりすることです。
例えるなら、一冊のノートを見ながら、 机の上にある別のノートを順番にチェックしていくイメージです。 人が手で行う作業を、VBAが代わりにやってくれます。
このとき重要になるのが、 保存形式と互換性という考え方です。 ここを理解していないと、マクロが動かなくなる原因になります。
マクロ有効ブック(xlsm)の基本を理解しよう
Excel VBAを使う場合、 ファイルは必ずマクロ有効ブックとして保存します。 拡張子は「xlsm」です。
拡張子とは、ファイル名の最後につく種類を表す文字です。 「家の表札」のようなもので、 Excelが中身をどう扱うかを判断します。
もし「xlsx」で保存してしまうと、 VBAのコードは消えてしまいます。 複数ファイルを扱う前に、 操作の中心となるファイルは必ずxlsmで保存しましょう。
操作される側のExcelファイルの保存形式
VBAで操作される側のExcelファイルは、 必ずしもxlsmである必要はありません。 「xlsx」や「xls」でも問題ありません。
これは、VBAが「指示役」で、 他のExcelファイルが「作業される側」だからです。 作業される側は、普通のExcelファイルでも動きます。
ただし、古い形式の「xls」を使う場合は、 Excelのバージョンによっては互換性の注意が必要です。
Excelのバージョン違いによる互換性の考え方
互換性とは、 違う環境でも同じように動くかどうかという意味です。 Excelは、2010、2016、2019、365など、 いくつも種類があります。
VBAの基本的な機能は、 ほとんどのバージョンで共通しています。 そのため、初心者のうちは、 バージョン差を強く意識する必要はありません。
ただし、複数ファイルを扱う場合は、 新しすぎる機能を使わないことが安全です。 基本操作だけで構成すると、トラブルが減ります。
複数ファイル操作でよく使われる保存場所の考え方
複数のExcelファイルを扱うときは、 ファイルの保存場所がとても重要です。 保存場所とは、パソコンの中の置き場所です。
例えるなら、書類を別々の部屋に置くよりも、 同じ引き出しにまとめた方が探しやすいのと同じです。
VBA初心者は、 操作するExcelファイルを同じフォルダに入れることで、 エラーを防ぎやすくなります。
複数ファイルを扱う前に確認したいVBEの設定
VBEとは、VBAを書くための画面のことです。 ExcelでAltキーとF11キーを押すと開きます。
複数ファイルを扱う場合でも、 特別な設定は基本的に必要ありません。 初期状態のままで問題なく動きます。
ただし、参照設定をむやみに変更しないことが大切です。 初心者のうちは、触らないのが安全です。
複数ファイル操作でよくある失敗と環境面の注意
よくある失敗の一つが、 マクロを含むファイルをxlsxで保存してしまうことです。 これにより、VBAが消えてしまいます。
また、別のパソコンで開いたときに、 マクロが無効になっている場合もあります。 セキュリティ警告が出たら、 内容を確認して有効化します。
環境設定を正しく理解しておくことで、 複数ファイル操作は安心して行えるようになります。