Excel 拡張子のxlsxとxlsmの違い

目次

拡張子のxlsxとxlsmの違い

xlsxとxlsmの違いは、マクロ(VBA)を含められるかどうかです。

項目 .xlsx(通常) .xlsm(マクロ有効)
正式名称 Excelワークブック Excelマクロ有効ワークブック
マクロの保存 不可(保存すると消去される) 可能
安全性 高い 中(マクロによるウイルス感染のリスクあり)
用途 通常のデータ入力、計算、グラフ作成など 業務自動化、複雑なプログラム(VBA)の実行

xlsxは、マクロ(VBAコード)を保存できません。マクロを含むブックをこの形式で保存しようとすると、マクロが削除されます。

xlsmは、VBAマクロを含めて保存できます。mはmacroの頭文字です。

マクロを使わないならxlsx、自動化処理やボタン操作などマクロが必要ならxlsmを選びます。

なぜxlsmとして分かれているのか?

昔のExcel(Excel2003以前)では、マクロが入っていてもいなくても、一律.xlsという拡張子が使われていました。しかし、これにはセキュリティの問題がありました。

ファイルを開くまでマクロ(プログラム)が含まれているかどうかが判別できないため、悪意のあるマクロを仕込んだファイルを勝手に実行させ、パソコンをウイルスに感染させるサイバー攻撃が多発したのです。

そのため、Excel2007以降はこのファイルにはプログラムが入っている(可能性がある)から、開くときは注意してねと、見た目でわかるように.xlsmとして区別されるようになりました。

xlsmファイルを扱うときの注意点

1.信頼できないファイルは開かない(マクロを有効にしない)

メールの添付ファイルなどで、見知らぬ人から送られてきた.xlsmファイルは開かないでください。開いた際にマクロを有効にしますか?という警告が出ても、信頼できない限り無効のままにしてください。

2.マクロを書いたのに.xlsxで保存すると消える

Excelでマクロ(VBA)を組んでも、間違えて通常の.xlsxで保存してしまうと、マクロのプログラムがすべて消去されてしまいます。マクロを使ったファイルは、必ず名前を付けて保存からファイル種類をExcelマクロ有効ワークブック(*.xlsm)に指定して保存する必要があります。

関連の記事

Excel(エクセル) 完了した行をグレーにする方法

△上に戻る