Excel VBA

【Excel VBA】【マクロ】【Tips】WindowsとMacで処理を分ける

こんにちは!Lenocoです。本日も見てくださりありがとうございます。

今回はWindowsとMacで処理を分ける方法について学びましょう!

WindowsとMacで処理を分ける

Excel VBAを使って、WindowsとMacの両方で動作するマクロを作成する場合、プラットフォーム固有の違い(WindowsなのかMacなのか)に注意する必要があります。
WindowsとMacでは、同じコードで動く場合もあればWindowsとMacで異なるコードになる場合があります。
そうした場合は、Windowsならこちらの処理、Macであればこちらの処理、というふうに2パターンの処理を作成し、適切にそれぞれの処理に通す必要があります。
If文を使って簡単にプラットフォームを判別できるので、今回はそのコードをご紹介いたします。

コード

If Application.OperatingSystem Like "*Windows*" Then
        '【Windows】の処理
ElseIf Application.OperatingSystem Like "*Macintosh*" Then
        '【Mac】の処理
End If

コードの説明

現在のプラットフォームの名前とバージョン番号を返す、「Application.OperatingSystem」プロパティを使います。
「Windows」や「Macintosh」を含む文字列が返ってくるので、いずれかの文字を含むかどうかで
プラットフォームを判別することができます。
プラットフォーム名だけでなくバージョン情報も含んだ文字列のため、完全一致ではなく、「Like」と「*」(アスタリスク)を使用して部分検索をする必要があります。

さいごに

WindowsとMacどちらでも動くマクロをを作ってほしいという依頼は多くないかもしれませんが、
簡単に処理を分けられるということを頭の片隅にいれておいてください!
こちらもご参考まで!

【Excel VBA】【マクロ】【Tips】Excel for Macで保存するとコードの「¥」が消える!?こんにちは!Lenocoです。本日も見てくださりありがとうございます。 前回に引き続き実案件の話をしたいと思います! 今回はExcel...

Lenoco

COMMENT

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