- ベストアンサー
エクセルで、PW付きのファイルを開くには?
Sub Macro1() Workbooks.Open Filename:="C:\Users\test.xlsx",,,0000 End Sub だと赤文字になってしまうのですが、どうすればいいでしょうか? パスワードは0000だとします。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Workbooks.Open "C:\Users\test.xlsx",,,,"0000" カンマの数を数えられないときは、キチンと名前付き引数を添えて Workbooks.Open Filename:="C:\Users\test.xlsx",password:="0000" とします。
その他の回答 (2)
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
答えとしては No.2 さんのご回答で完結していますが、若干の補足を。ベストアンサーは辞退します。 No.2 さんがお示しのとおり、「,,,,」という形式で書くときは逆に、引数の名前「Filename:=」という記述は混ぜないでください。 また、引数の種類が 2、3 個ならどちらの書き方でもいいですが、Workbooks.Open メソッドでは 15 個ですし、何十個にも及ぶものもたくさんあります。そうしたときに「,,,,」の形式では、コードの可読性が著しく下がるので(「,」を数えること&位置を覚えることがたいへん)、できれば引数の名前を書くことが望ましいです。 なお API 関数を呼び出すときなどに出てくる alias(エイリアス)という言葉は、「別名」という意味の、英会話でも使える一般的な単語で、関数の別名のことを言っていますが、VBA の名前付き引数(named argument)の場合は、だいたい「名前」という呼び方がされています。「Filename」や「password」のことです。
お礼
ありがとうございました。
- bin-chan
- ベストアンサー率33% (1403/4213)
パスワードって「文字列」だから。ダブルクォートで囲む必要があるのでは? Workbooks.Open Filename:="C:\Users\test.xlsx",,,"0000"
お礼
ありがとうございました。
お礼
ありがとうございました。