#Excel 2019 for Mac のファイルアクセス権限
MacOS Mojave から Mac のアプリはセキュリティが強化され、操作毎にアプリが初めてアクセスするファイルやフォルダに権限を与える作業が必要になりました。
特にVBAを利用される方はDir関数等でフォルダ内のデータをピックアップするや別のブックを参照するなどで初めてアクセスするファイル、フォルダにはVBAが中断され、ファイルアクセス権の付与作業が求められます。
例えば、ファイルの移動をするNameステートメントを使っても、初めてアクセスするファイル、フォルダの場合はVBAが中断され、ファイルアクセス権の付与作業が求められます。
Sub FileMove()
Dim file As String
Dim dir As String
file = Range("B2").value
dir = Range("B3").value & Application.PathSeparator & "sample.csv"
Name file As dir
End Sub
設定 > セキュリティーとプライバシー > プライバシー でファイルとフォルダのアクセス権を与えても個別に許可する必要があります。ただし、一度アクセス権を付与すると別のExcelファイルでもアクセス権は維持されます。
##回避方法
大変煩わしいだけでなく、別のブックへの参照をするVBAを実行する際はそこで処理が停止してしまうのでできれば避けたいところですが、回避するためにはAppleScriptで同様の機能を実装するしかありません。
VBAからAppleScriptを利用するにはAppleScriptTask関数(Excel2016 for Macから)を利用する必要があります。
詳しい情報はこちらのブログにも書いています。もしよかったらご覧ください。