Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@EugenesWorks

Excel 2019 for Mac ファイル関連関数の挙動について

Excel 2019 for Mac ファイル関連関数の挙動について

ExcelのVBAを利用されている方の大半はシート上の操作だけでなく、他のブックやCSVデータを参照したり、ファイル操作を行う事が多いと思います。前回はDir関数について書きましたが、今回はWindowsとMacではどの程度、差があるのかここで表にしてみたいと思います。

環境はMacOS Catalina , Excel2019です。

関数名 Windows Mac
Application.GetOpenFilename() OK OK
GetOpenFilename(FileFilter:=“CSV Files (*.csv), *.csv”) OK NG
FileDialog(msoFileDialogFolderPicker) OK NG
Name BEFOREPATH As AFTERPATH OK OK
Workbooks.Open filename:=PATH OK OK
FileCopy ORIGINALPATH, COPYPATH OK OK
Kill PATH OK OK
Application.DefaultFilePath OK OK
ThisWorkbook.path OK OK
MkDir (NEWPATH) OK OK
RmDir (PATH) OK OK
FileDateTime(PATH) OK OK
FileLen(PATH) OK OK
Open PATH For Output As #1 OK OK*

基本的に使用可能ではありますが、ワイルドカードのあるGetOpenFilename()とFileDialog(msoFileDialogFolderPicker)は使用できません。
ワイルドカードのあるGetOpenFilename()では以下のエラーが表示されます。
openfilename_mac.png

FileDialog(msoFileDialogFolderPicker)では以下のエラーが表示され、コードのチップを見てみるとNothingと表示されています。
folderdialog1_mac.png

folderdialog2_mac.png

特に気を付けなくてはならないのが、Openステートメントです。指定したパスに日本語のフォルダが入っているとエラーが発生し、ファイルの保存に失敗します。回避する為には共有フォルダに保存するかAppleScriptで実装するしかありません。

また、初めてアクセスするファイルやフォルダにはアクセス権の付与が必要になります。他のブックの参照をする際、初めて参照するブックを開く場合はアクセス権の付与ダイアログが表示され、マクロが停止します。

Workbooks.Openでは参照先がマクロブックの場合はセキュリティによって、マクロ許可ダイアログでマクロが停止します。Windows版ではマクロ許可バナーになっているので問題ありません。尚、Mac版ではマクロを個別で許可することはできません。

詳しいことはブログにも書いています。

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?