VBA: OSのバージョン表示が変です
Win10(64bit) で Excel2013(32bit) の環境です.
Excel の VBA で OS のバージョン確認をするために以下のコードを実行しました.
Debug.Print Application.OperatingSystem
結果は以下のとおりです.
Windows (32-bit) NT :.00
本来なら,以下のように表示されるはずと思い,ネットで調べたところ,
Windows (64-bit) NT 10.00
32-bit と表示されるのは,Excel のバージョンが表示されている(バグ?)らしいですが,OSのナンバー表示が .00 になるのは,私のPCの場合だけでしょうか?
投稿日時 - 2019-10-11 19:11:55
このQ&Aは役に立ちましたか?
0人が「このQ&Aが役に立った」と投票しています
回答(5)
:>結果は以下のとおりです.
:>Windows (32-bit) NT :.00
Versionが”00”と表示されるのは正常です。
参考URL:https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.operatingsystem
投稿日時 - 2019-10-12 12:51:22
後で「Windows (32-bit) NT :.00」を検索したら、以下のQ&Aが見つかりました。(既にご覧になっているかも知れませんが)
Excel VBAでのWindowsバージョンの調べ方
https://answers.microsoft.com/ja-jp/msoffice/forum/all/excel/a07a734b-3b7c-4ded-a1d0-3e8b0409b5cb
投稿日時 - 2019-10-11 20:54:26
回答ありがとうございます。
以前はご指摘の方法を使っていましたが、Application.OperatingSystem ならたった1行で済むので試してみたところ、表示が変だったので質問させていただきました。
投稿日時 - 2019-10-12 08:16:14
Excel2019だと10.00ですね。
:.00 になるのはバグな気がします。
: というのは文字コード順で9の次です。
0123456789:;<=>?@ABCDEFG・・・・
と並んでいます。
Excel2013でその部分のコードを書いた人は、Windowsのバージョン番号が2桁になることはないと思ったか、もしくはそれまでにOffice2013がサポート切れになると思ったか(いや、おそらくは何も考えてない)。
もしVer11と表示されるWIndowsが出て、Excel2013で実行すると、;.00 になる気がします。
投稿日時 - 2019-10-11 20:53:21
回答ありがとうございます.
なるほど,文字コード順の可能性が高そうですね.
この手のバグは,後で勝手に修正されたりすると面倒なことになるんですよね...
まぁ,MS社はWin10が最後と言ってますから,.00 の部分が.99になるまでは大丈夫かも知れませんね.
投稿日時 - 2019-10-12 10:31:41