【簡単エクセル/Excel VBA マクロ】Mac環境でマクロを動作させるための3つの基本事項|ワンポイントテクニック #012


いつもありがとうございます。
皆さん、こんにちは。ご覧いただきありがとうございます。
“日々の業務にちょうどいい自動化を”──
業務改善アプリケーションの作成を行っている「ソフトデザイン工房」です。
この記事では「Mac環境でマクロを動作させるための3つの基本事項」を解説します。
WindowsとMacは細かな違いがあり、Windowsで動作確認したマクロがMacでそのまま動くとは限りません。
むしろ、動かないことの方が多いと思っていた方がよいでしょう。
そこで本稿では、Mac環境でも動作させるための基本を解説します。
MacでVBAマクロを動作させようとしている読者の皆さんは、きっとVBAに精通した上級者でしょう。
この記事が、あなたのVBAマクロの価値をさらに高める一助となれば幸いです。
VBAを活用して、自分自身や身近なコミュニティに合ったアプリケーションを作成し、仕事量は半分に、成果は2倍に──そんな未来を目指すあなたを応援しています。
Mac環境でマクロを動作させるための3つの基本事項

1. OSに依存しないパスの区切り方にする
WindowsとMacでは、ファイルパスの区切り文字(ディレクトリを区切る記号)が異なります。
' Windowsはバックスラッシュ(\)
C:\Users\YourName\Documents\file.txt
' Mac(およびLinux)はスラッシュ(/)
/Users/YourName/Documents/file.txtこの違いに対応するには、Application.PathSeparatorを使います。Application.PathSeparator は、WindowsとMac(およびLinux)で、それぞれのOSに合わせたパスの区切り文字を取得するためのプロパティです。
"C:" & _
Application.PathSeparator & "Users" & _
Application.PathSeparator & "YourName" & _
Application.PathSeparator & "Documents" & _
Application.PathSeparator & "file.txt"2. ファイルパスを半角英数にする
WindowsとMacではファイルシステムが異なります。
Macのファイルシステム(UTF-8-NFD)では日本語のファイルパスが解釈されないことがあります。
そのため、Macでは日本語を含むファイルパスが原因でファイオブジェクトルやフォルダオブジェクトの取得に失敗することがあります。
ファイル名を含むファイルパスを半角英数にするとこの問題を回避しやすいです。
' 良い例
/Users/YourName/Documents/example.xlsx
' 良くない例(エラーの可能性あり)
/Users/YourName/ドキュメント/サンプル.xlsx3. Windows固有のライブラリを使わない
FileSystemObject を使うための 「Microsoft Scripting Runtime」 など、 Windows固有のライブラリ は、Macには搭載されていません。
そのため、これらのライブラリに依存したマクロはMac環境では動作しません。
Macでも動作させるには、Windows固有のライブラリを使わないローレベルコードで実装する必要があります。
たとえば、FileSystemObjectの代わりにはDir関数を使うなどの方法があります。
Windows固有のライブラリを使えないのは大きな制約ですが。避けて通れないポイントです。

以上で解説は終了です。ありがとうございました。
VBAスキルアップの参考情報
近年は、ChatGPTをはじめとするAIの登場によって、学習のスタイルが大きく変わりました。
分からないことがあれば、AIに尋ねれば答えがすぐに見つかる時代です。
とはいえ、AIを使いこなすには、自分自身の基本的な知識や理解力が欠かせません。
全体像をつかむためには、やはり書籍などで体系的に学んでおくことが今でも有効です。
そのうえでAIを活用すれば、自分の理解度に合わせた的確な解説や、応用のヒントを得ることができます。
「学んで基礎を築く → AIで補い発展させる」──このサイクルを重ねることで、VBAスキルは着実に高まっていくでしょう。
VBAのスキルアップ
VBAを学び始めるなら
入門書は、どれを選んでも大きな差はないように感じます。
どれを選ぶかに悩むことに時間をかけるよりも、まずは手頃な一冊を手に取って進めてみるのがおすすめです。
もし迷ったときには、私はインプレス社の「いちばんやさしい」シリーズを選ぶことが多いです。
基礎を超えて力をつけたいなら
私は上級者を目指していましたので、入門書にとどまらず、このような内容の濃い一冊を選んで学んでいました。
今は誰でもAIを活用できる時代になりましたが、上級者を目指す方にとっては、AIをより上手に活用するという意味でも、こうした本は今なお価値があります。
このレベルの本を一冊持っておくことに、損はないでしょう。
資格で能力を証明したいなら
VBAのプログラミング能力を客観的に示したい場合には「VBAエキスパート試験」があります。
特に「スタンダード」の方は上級者向けです。
あなたが社内業務の改善を行う立場であっても、VBAで作成したシステムをお客様に納める立場であっても、この資格は信頼や安心につながるでしょう。
以下の公式テキストが販売されています。
プログラミングの一般教養
「独学プログラマー」というプログラミングの魅力を解説した書籍があります。
これはVBAではなくPythonを題材としていますが、プログラミングの基本的な知識や思考法、仕事の進め方まで幅広く学べます。
今はAIにコードを尋ねれば、答えが返ってくる時代です。
しかし、この本からは「コード」以上に、プログラミングに向き合う姿勢や考え方を学ぶことができるでしょう。
こちらの記事でも紹介しています。もしよろしければご覧ください。
【初心者歓迎】無料相談受付中

いつもありがとうございます!
限られた時間をより良く使い、日本の生産性を高めたい──
みんなの実用学を運営するソフトデザイン工房では、業務整理や業務改善アプリケーション作成のご相談を承っております。
お気軽にご相談ください。
こちらの記事でも紹介しております。
おわりに


ご覧いただきありがとうございました!
今回の記事では、「Mac環境でマクロを動作させるための3つの基本事項」を解説いたしました。
お問い合わせやご要望等ございましたら、「お問い合わせ/ご要望」またはコメントにて、ご連絡いただければ幸いでございます。
皆様の人生がより一層素晴らしいものになるよう、少しでもお役に立てれば幸いでございます。
なお、当サイトでは様々な情報を発信しております。もしよろしければ、トップページもご覧いただけると幸いでございます。
VBAプログラミングスキルアップのための参考情報
ここでは参考図書を紹介いたしますが、これらに限らず自分に合うものを選ぶことが重要だと考えております。皆様の、より一層のご成功を心よりお祈りしております。
VBAプログラミングのスキルアップ
学習用としてもハンドブックとしても役立つ便利な書籍がこちらです。価格はやや高めですが、その内容は非常に充実しています。相応のスキルを身に付けるためには、こうしたしっかりとした書籍を一冊持っておくと良いでしょう。


