こんにちは、Ryoです。
ExcelやOSが常に最新バージョンで統一されていれば良いのですが、現実的には難しいですから複数混在する環境になってしまうのが一般的ですよね。それぞれのバージョンはVersionプロパティやOperatingSystemプロパティを使うことで取得できますので、今回はその方法について書いていきます。
1.Excelバージョンの取得
私はExcelの2010と2016の環境を持っているので、各々バージョン情報を取得してみます。
◆Excel2010
Excel2010のバージョン情報を確認すると以下の通りになっています。
そこで、以下のサンプルコードを実行します。
Sub Sample1() MsgBox "Excel Version : " & Application.Version, vbInformation End Sub
実行結果として、Excel2010は「14.0」というバージョンNo.が返ってきます。
◆Excel2016
こちらもExcel側のバージョン情報を確認すると以下の通りです。
同様のサンプルコード(上述Excel2010と同じ)を実行します。その結果としては以下画像となり、Excel2016は「16.0」というバージョン情報が返ってきます。
このようにExcelのバージョンを取得するには、Versionプロパティを使用します。
オブジェクト.Version
構文のオブジェクトはApplicationになり、実行すると上述結果の通りExcelのバージョンに応じた文字列が返ってきます。
Excelのバージョンと取得される文字列(バージョンNo.)は以下の通りです。
バージョン | バージョンNo. |
Excel2016 | 16.0 |
Excel2013 | 15.0 |
Excel2010 | 14.0 |
Excel2007 | 12.0 |
Excel2003 | 11.0 |
Excel2002 | 10.0 |
Excel2000 | 9.0 |
Excel97 | 8.0 |
Excel95 | 7.0 |
Excel5.0 | 5.0 |
2.OSのバージョンを取得
OSのバージョンを取得するにはOperatingSystemプロパティを使用します。
オブジェクト.OperatingSystem
実行するとOSの種類を取得しますので、私のPC(Windows10 64bit)で確認してみます。
◆サンプルコード
Sub Sample2() MsgBox "OS Version : " & Application.OperatingSystem, vbInformation End Sub
実行結果は・・・
結果は「Windows(32bit)NT 10.00」となりましたが、私のOSは64bitなので変ですよね。
何故結果が異なるのかというと、「インストールされたOfficeによって変わる」ようです。私のOfficeは32bitなので、OSのバージョン情報を取得してるにも関わらず32bitとして返ってくるということですね。紛らわしいので、この点はご注意ください。
NT以降の文字列はWindowsバージョンによって異なるようで、以下の値が返ってきます。
OS | バージョン情報 |
Windows10 | Windows(32bit or 64bit)NT 10.00 |
Windows8 | Windows(32bit or 64bit)NT 6.02 |
Windows7 | Windows(32bit or 64bit)NT 6.01 |
Windows Vista | Windows(32bit or 64bit)NT 6.00 |
Windows XP | Windows(32bit or 64bit)NT 5.01 |
Windows2000 | Windows(32bit or 64bit)NT 5.00 |
Windows Me | Windows(32bit or 64bit)NT 4.90 |
Windows98 | Windows(32bit or 64bit)NT 4.10 |
Windows95 | Windows(32bit or 64bit)NT 4.00 |
表内の(32bit or 64bit)はOSとOfficeが64bitなら「64bit」、Officeが32bitなら「32bit」が返ってくる形になります。
3.まとめ
ExcelやOSのバージョンの違いにより処理を変える場合には、有効な手段だと思います。特にExcelでは異なるバージョン間ですとエラーが発生しやすいこともありますからね。
利用頻度としては、それほど高くないものの1行の記述で取得できるような内容ですから知っておくと今後何かの役に立つのではないかと思いますので、機会があればぜひご活用くださいませ!
以上、ExcelやOSのバージョンを取得する方法についてでした!今回の記事が何かの参考になれば幸いです。
Ryo