ExcelマクロVBA入門 | 第63回.ブックを開く(Open) | Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説



最終更新日:2018-01-27

第63回.ブックを開く(Open)


他のブックを開く方法です、しかし、これが結構いろいろあるのです。

Excelで開くことが出来るファイルはCSV等のテキストファイルもありますが、

ここではエクセルファイル限定で説明します。


テキストファイルや CSVの読み込み方法 については、別の記事を参考にして下さい。


Workbooks.Openメソッド

Workbooks.Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)

名前 説明
FileName 開くブックのファイル名。
UpdateLinks ファイル内の外部参照 (リンク) の更新方法を指定します。
ReadOnly ブックを読み取り専用モードで開くには、True を指定します。
Format テキスト ファイルを開く場合は、この引数で区切り文字を指定します。
Password パスワード保護されたブックを開くのに必要なパスワードを指定します。
WriteResPassword 書き込み保護されたブックに書き込みをするために必要なパスワードを指定します。
IgnoreReadOnlyRecommended [読み取り専用を推奨する] チェック ボックスをオンにして保存されたブックを開くときでも、読み取り専用を推奨するメッセージを非表示にするには、True を指定します。
Origin 開こうとしているファイルがテキスト ファイルの場合、それがどのような形式のテキスト ファイルかを指定します。
Delimiter 開こうとしているファイルがテキスト ファイルで、引数 Format が 6 の場合は、この引数で区切り文字を使用します。
Editable 開こうとしているファイルが Excel 4.0 のアドインの場合、この引数に True を指定すると、アドインがウィンドウとして表示されます。
Notify ファイルが読み取り/書き込みモードで開けない場合に、ファイルを通知リストに追加するには、True を指定します。
Converter ファイルを開くときに最初に使用するファイル コンバーターのインデックス番号を指定します。
AddToMru 最近使用したファイルの一覧にブックを追加するには、True を指定します。既定値は False です。
Local Excel の言語設定 に合わせてファイルを保存するには、True を指定します。
CorruptLoad 開くモードを、抽出モード、正常、修復モードから指定します。

上表は、名前付き引数です。

戻り値
Openメソッドには戻り値があります。

戻り値は、

開いたブックのWorkbookオブジェクトになります。

太字の引数のみ説明します。

それ以外について必要な場合は、ヘルプ等を参考にして下さい。


FileName
通常は、エクセルファイルをフルパスで指定します。

FileName:="C:\User\sample.xls"

このように指定します。

パスが指定されていないと、カレントディレクトリーからになりますが、

そのよう使い方をせず、フルパスで指定するようにして下さい。

マクロを書いているブックと同一フォルダなら、

FileName:=Thisworkbook.Path & "\sample.xls"

このように指定します。

Thisworkbook.Path、これで自身のブックのパスが取得できます

UpdateLinks
外部参照 (リンク) のあるブックを開こうとすると、

リンクの更新方法を確認するメッセージがユーザーに表示されます。

0 : 外部参照 (リンク) は更新されません。
3 : 外部参照 (リンク) が更新されます。


(1,2の指定もありますが、特に使う事はないでしょう)

UpdateLinks:=0

これで、リンクが更新されずに、ブックが開かれます。

0Falseと記す事もできます、VBAでは、False=0です。


ReadOnly

ReadOnly:=True

これで、読み取り専用で開かれます。


Password、WriteResPassword
パスワード保護されているブックを開く場合には、

Password:="読取りパスワード"

WriteResPassword:="書込みパスワード"

このようにすることで、パスワード入力が出なくなります。



使用例

Workbooks.Open "C:\User\sample.xls"

このように、ファイルのみ指定する場合は、名前付き引数を使用するまでもないでしょう。


Workbooks.Open Filename:="C:\User\sample.xls", UpdateLinks:=0, ReadOnly:=True

外部参照 (リンク) は更新せずに、読み取り専用で開いています。

このように、引数が複数になる場合は、名前付き引数を使用した方が良いでしょう。



戻り値の使い方

Dim wb As Workbook
Set wb = Workbooks.Open(Filename:="C:\User\sample.xls")


メソッドの戻り値を使用する場合は、引数を()で囲みます。

戻り値が、Workbookオブジェクトなので、

同時に、Setステートメントで、オブジェクト変数に入れています。

これにより、オブジェクト変数で開いたブックを扱う事ができるようになります。

これは、

Workbooks.Open(Filename:="C:\User\sample.xls")

Set wb = Activeworkbook

または、

Set wb = Workbooks("sample.xls")

これを1行で指定している事になります。



関連記事





同じテーマ「マクロVBA入門」の記事

第60回.エラー処理(On Error)
第61回.「On Error Go To」と「Exit Sub」
第62回.「On Error Resume Next」とErrオブジェクト
第63回.ブックを開く(Open)
第64回.ブックを閉じる・保存(Close,Save,SaveAs)
第65回.シートの挿入、名前の変更(Add,Name)
第66回.シートのコピー・移動・削除(Copy,Move,Delete)
第67回.総合練習問題7
第68回.シートの保護、ブックの保護(Protect)
第69回.シートの非表示(Visible)
第70回.ウィンド枠の固定(FreezePanes)

新着記事 ・・・新着記事一覧を見る

数値範囲で表検索するVLOOKUP近似一致|エクセル関数超技(10月5日)
エクセルVBAでのシート指定方法|VBA技術解説(9月8日)
VBAのクラスとは(Class,Property,Get,Let,Set)|VBA技術解説(8月28日)
VBAこれだけは覚えておきたい必須基本例文10|VBA技術解説(8月22日)
VBAの省略可能な記述について|ExcelマクロVBA技術解説(8月11日)
複数条件判定を行う時のコツ|ExcelマクロVBA技術解説(7月11日)
For Next の使い方いろいろ|VBA技術解説(6月14日)
VBAを定型文で覚えよう|ExcelマクロVBA技術解説(3月26日)
VBAスタンダード試験対策まとめ|MOS VBAエキスパート対策(3月16日)
ユーザーフォームとメニューの操作|MOS VBAエキスパート対策(3月14日)

アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|ExcelマクロVBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.変数とデータ型(Dim)|ExcelマクロVBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.マクロって何?VBAって何?|ExcelマクロVBA入門
7.定数と型宣言文字(Const)|ExcelマクロVBA入門
8.繰り返し処理(For Next)|ExcelマクロVBA入門
9.とにかく書いて見よう(Sub,End Sub)|VBA入門
10.ひらがな⇔カタカナの変換|エクセル基本操作



  • >
  • >
  • >
  • ブックを開く(Open)

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。





    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。

    本文下部へ

    ↑ PAGE TOP