VBAでExcel判定(5.0~2021&bit数も)

Application.VersionApplication.Buildからぺぺっと判別します。
Application.Versionはこんな感じ。13がMac用なのかな??

ExcelApplication.Version
5.05
957
978
20009
200210
200311
200712
201014
201315
201616
201916
202116

Application.Buildはビルド番号が取得できますのでServicePackの有無を判別します。
これはMicrosoftから出てますので、要チェケラ!

Excel 2003:http://support.microsoft.com/kb/821549/ja
Excel 2007:http://support.microsoft.com/kb/928116/en
Excel 2010:http://support.microsoft.com/kb/2121559/ja
Excel 2013:http://support.microsoft.com/kb/2951141/ja 
Excel 2016:ServicePack自体がない。あと4229未満がInsidersPreviewっぽい。
C2R版は2019以降に統合されたので後述。
MSI版の最新ビルド番号はこちらから最新の更新プログラムのリンクを踏むと確認できます。
Excel 2019:こちらによるとボリュームライセンス版は10337、製品版は10827以降が正式リリース版っぽい。
Excel 2021:オフラインインストールは14326で配信開始されました。
直前の9/28で2016 C2Rおよび2019が14430になっているので、その直前版って感じか。

32bitと64bitの判別

実はApplication.OperatingSystemでわかります。
このプロパティにアクセスすると、こんな文字列が返ってきます。

Windows (32-bit) NT 6.01

最近のOSだとNT以降がちょっと変(NT :.00)だったりしますけど、64bitのOS×32bitのExcel環境で実行してみるとわかりますが、 このbit数が実はOSではなくExcelのものなんですよね。
なのでこれでOK。

If InStr(1, Application.OperatingSystem, "32-bit", vbBinaryCompare) <> 0 Then
    ' 32bitです
Else
    ' 64bitです
End If

Excel2016/2019/2021/Microsoft365の区別

で、Excel2016以降、そもそもバージョン番号一緒なんですけど。
2019年4月現在、
CD-ROMからインストールしたOffice 2016は16.0.4822ですが、
ライセンスのみ購入してインストールしたExcel 2016はC2R版になるのか16.0.11328でした。
2021年10月現在、
ライセンスのみ購入してインストールしたExcel 2021は16.0.14326でした。
これの解決方法がまだわかっていません。
PowerShellを使えばなんとかなるみたいだけど、これは私の仕事環境的にチョイスできない。
Win32_Productクラスを利用する方法も試してみましたが、処理の時間にかなりムラがある上、Excel2016はHitするのにExcel2019を入れた環境ではHitせず…。
いえ、逆に「Hitしなければ2019」と言ってもいいのかもしれないけど、それはいくらなんでも危険過ぎるーどうしようー

2019’12月現在、解決策は見つかってません!誰か助けてよ!

Microsoft365とExcel2021の区別

Excel2021を単体で購入してインストールしたところ、コントロールパネル上は2021なんですが、起動するとMicrosoft365扱いになりました。

ただ、それは直前までMicrosoft365をインストール&ログインしていたからっぽい。
Microsoft365をアンインストールしても、ログイン情報は残っているもよう。
Excel2021をインストールして、Excelを起動(Microsoft365と表示される)→サインアウトして、Excel2021ライセンスを紐付けたアカウントでログインしたらExcel2021と表示されました。
中身は変わらず、Excelにログインしているアカウントで表示を変えているだけ??ずるくないか?

MSアカウントでも、Excel2019以降ただの「Excel」としか表示していないので、ひょっとして2019からこうだった?

OSの判定は?


他にもニッチなIT関連要素をまとめていますので、よければ一覧記事もご覧ください。

2件のコメント

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)