Microsoftもいよいよ64ビット版に舵を切るようです。
以前は﹁(64ビット版は)私は試用もしていません。﹂と言っていたのですが...
Office2019のリリース段階になって、インストール済みPCを含めて64ビット版がデフォルトになるという情報があり、
たまたま、古いPCを買い換える状況であったので、Office2019インストール済みPCを購入しました。
最近のPCにインストールされているOfficeは﹁Metroモード﹂とか言うのでしょうか(﹁C2R方式﹂というらしい)、コントロールパネルの﹁プログラムと機能﹂には表示されず、
Program Filesにもサブフォルダが無い状態でインストールされているもので、期待した64ビット版ではなく32ビット版だったのです。
ですが、これをアンインストール(結構面倒でした)してダウンロードサイトから再インストールさせたところ、
64ビット版を選択するようなオプション選択の方法は判らなかったのですが、64ビット版で再インストールされました。
もう一台Office2016のPCがありますが、こちらは再インストールを試みても32ビット版にしかならないようです。
その後、2020年からは﹁Microsoft 365(Office 365)﹂の年間ライセンスに変更したので、一方は32ビット版、他方は64ビット版でインストールさせています。(同時利用に制限がありますが複数のPCにインストールできます)
一部の方に誤解があるようです。
この誤解は﹁Windowsを64ビット版にしたらOfficeも64ビット版にしなければならないのだろう﹂という先入観によるものです。
あるいは﹁Officeに64ビット版があるならその方が性能が良いだろう﹂という調べもしないで選択したケースもあります。
元々64ビット版Windowsには32ビットのアプリケーションを確実に動作させる環境(WoW64)が完備されています。
これがなかったら、大半のアプリケーションは64ビット版Windows上ではインストールさえできないことになります。
この環境があるので32ビット版Officeは64ビット版Windows上で問題なく動作しますし、
Office2016までのOfficeのインストール済みで販売されているPCでは、
Windowsが64ビット版であってもOfficeは32ビット版です。
64ビット版Officeを必要とする要件があるのかどうかでここからの判断は異なりますが、以下で判断して下さい。
組み合わせでの 動作可否 |
Office |
32ビット版 |
64ビット版 |
Windows |
32ビット版 |
○ |
× |
64ビット版 |
○ |
○ |
動作可否はこの表のようになります。これは
Officeに限ったことではありませんが、
64ビット版
Windows上では
32ビット版
Officeと、
64ビット版
Officeのどちらでも選択できます。(両方の
Officeを共存させることはできません)
企業内全般で64ビット版Officeに切り替えるのか
企業内で32ビット版Officeと64ビット版Officeが混在している場合は、
64ビット版Officeで作成できるような巨大なドキュメントファイル(2GB超)を作成しても32ビット版Officeでは開くことはできないので
64ビット版Officeによるメリットは享受できません。
動作速度に関する違いは検証できませんが、物理PCが同じである以上、ほぼ何も違わないと思われます。
もうひとつの問題は企業内にAPIのマクロ記述を含むドキュメント資産がどの位あるかです。
64ビット版Officeに対応していないAPIのマクロ記述はすべてエラーになります。
それぞれのマクロ記述を書き換える必要が発生します。
互換性を重視するなら32ビット版Officeを選択しなさい、というのはMicrosoftの見解でもあり、
以前から「Office 2013 の 64 ビット版」などの文書が出されています。
どちらを選択するかについては「64ビット版と32ビット バージョンのOffice間での選択します。」というページがありました。
Windows供給のAPIについては一部例外を除いて記述修正で済みますが、
サードパーティーからのDLLやCOMアドインで32ビット環境しか対応していない場合はこれを利用するものは実行できないことになります。
リボンタブが追加されたり、アドインタブにツールバーが表示されるようなものを利用されている場合はマクロの有無に関係なく注意が必要です。
Excelは本来、バージョン互換が高いアプリケーションです。
APIを含むマクロ記述が無いExcelドキュメントについて、32ビット版Officeと64ビット版Officeでの非互換情報はよく判りません。
特にOffice365についてはどんどん機能追加されてしまうので、非互換がビット数の問題かどうかも判りにくくなっている状況だと思います。
但し、APIを含むマクロ記述についてははっきり在来記述だと「非互換」と判っているので、「Excel環境」のページですが互換を採るための方策の説明をしておきます。
マクロを持つワークブックを社内で配布した時バージョン管理の問題を捉えなければならないことは、当サイトの立ち上げ当初から「配布の問題」で説明していた通りです。
いよいよこの問題が差し迫ってきていると認識して下さい。64ビット版Officeを禁止してしまうのも当面の方策です。
問題のマクロ記述を持つワークブックを64ビット版Officeで開くと、
このようなエラーが表示されます。
プロジェクトがパスワード保護されている場合は、
このようなメッセージに変わります。これはWindows10+Excel2019なのですが、
メッセージが「尻切れ」になってしまっています。
以前のバージョンだと、
このように表示されていました。
これらのコンパイルエラーは対象のワークブックをマクロ有効にして開いた時に表示されるものでマクロ自体の実行に関係なく表示されます。
逆に言えば、エラーが表示されなければマクロがあるワークブックであっても当面のAPI記述の問題はないということになります。
(マクロの実行可否は別ですが....)
この場合はマクロの変更が必要になります。
この変更については「API関連」の「32ビット版、64ビット版での共用利用」をご覧下さい。