ちょっとハマったのでアウトプットしておきます。
問題点
VBでMicrosoft.Office.Interop.Excel.Application
またはCreateObject('Excel.Application')
を使ってExcelを起動する際に使用されるExcelのバージョンが2003で起動されてしまって、xlsmファイルが認識できずExcelの起動に失敗する。
(このファイルの形式を認識できません)
なぜ、こんな状況になったか?
Office2010をインストール後にOffice2003をインストールすると、レジストリの設定がExcel2003をデフォルトとして設定してしまう。
対処方法
regedit.exeにて、
HKEY_CLASSES_ROOT\CLSID\{00024500-0000-0000-C000-000000000046}\LocalServer32
の(既定)
とLocalServer32
の値をC:\Program Files\Microsoft Office\Office14\EXCEL.EXE /automation
という感じに起動させたいExcelのパスに変更してあげる。