マクロを保存できるファイル形式か確認する
ファイル形式だけでは、マクロが実際に含まれているかは判定できません。この例はマクロを保存できる形式かどうかを調べます。
実行前に確認
- 拡張子やFileFormatだけでは実際のマクロの存在を断定できません。HasVBProjectも実行可能な手続きの存在までは保証しません。
1サンプルコード
Sub Sample3010()
Select Case ThisWorkbook.FileFormat
Case xlOpenXMLWorkbookMacroEnabled, xlExcel12, xlExcel8, xlOpenXMLTemplateMacroEnabled, xlOpenXMLAddIn
MsgBox "マクロを保存できる形式です。実際の有無は別途確認が必要です。"
Case Else
MsgBox "この例の判定対象のマクロ対応形式ではありません。"
End Select
End Sub図で見る操作の流れ
イメージ図概念図:マクロを保存できる形式かを分類します。
対象
コードを保存したブックのFileFormat
マクロ:比較
指定したマクロ対応形式の一覧と照合
結果
一覧に一致するかどうかをメッセージ表示
形式の判定だけです。実際のマクロや実行できる手続きの有無は分かりません。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する3つの手順で、コードの使い方を確認できます
- 1
練習用のブックをExcelマクロ有効ブック(.xlsm)で保存します。
- 2
Alt+F11でVBEを開き、[挿入]→[標準モジュール]にコードを貼り付けます。
- 3
Sample3010内にカーソルを置いてF5で実行します。マクロ対応形式かどうかが表示されますが、実際のマクロの有無はこの結果からは分かりません。