【VBA】リンク更新を無視してExcelファイルを開く方法(Workbooks.Open)
外部リンクのあるExcelファイルを開くと画像のようなメッセージが表示されることがあります。
手で開いているときはあまり問題ないですが、マクロで開くときには邪魔になります。
マクロを実行してコーヒーでも入れていたのに、戻ったらこのメッセージが出ていたらイライラしてしまいます(メッセージの表示中はマクロが止まるのです)
そこで、今回はこのメッセージを無視してExcelファイルを開く方法を紹介します。
リンク更新を無視してExcelファイルを開く方法(Workbooks.Open)
Sub Sample1()
Dim wb As Workbook
'Workbooks.OpenのUpdateLinksに0を指定する
Set wb = Workbooks.Open(Filename:="Excelファイルのパス", UpdateLinks:=0)
End Sub
リンク更新を無視する方法はとても簡単です。
Excelファイルを開くにはWorkbooks.Openメソッドを使いますが、このメソッドの引数でUpdateLinks:=0と指定するだけです。
UpdateLinksはファイル内の外部リンクの更新方法を指定する引数で、0を指定すると更新なし(メッセージが出ない)となります。
外部リンク付きのExcelファイルを開くときに活用してみてください。
Workbooks.Openメソッドの引数一覧
ちなみに、Workbooks.Openメソッドには以下のような引数を指定できます。
名前 | 説明 |
---|---|
FileName | 開くブックのファイル名 |
UpdateLinks | ブックの範囲への参照などの、ファイル内の外部参照 (リンク) の更新方法を指定します。 この引数が省略された場合は、リンクの更新方法を指定するように求められます。 |
ReadOnly | ブックを読み取り専用モードで開くには、True を指定します。 |
Format | テキスト ファイルを開く場合は、この引数で区切り文字を指定します。 この引数を省略すると、現在の区切り文字が使用されます。 |
Password | パスワード保護されたブックを開くのに必要なパスワードを指定します。 この引数を省略した場合、パスワードが必要なブックでは、パスワードの入力を促すダイアログ ボックスがユーザーに表示されます。 |
WriteResPassword | 書き込み保護されたブックに書き込みをするために必要なパスワードを指定します。 この引数を省略した場合、パスワードが必要なブックでは、パスワードの入力を促すダイアログ ボックスがユーザーに表示されます。 |
IgnoreReadOnlyRecommended | [ 読み取り専用を推奨する] チェック ボックスをオンにして保存されたブックを開くときでも、読み取り専用を推奨するメッセージを非表示にするには、 True を指定します。 |
Origin | ファイルがテキスト ファイルの場合、この引数でファイルの作成元を指定します。これにより、コード ページと改行コード (CR/LF) を正しくマッピングできます。 使用できる定数は、XlPlatform クラスの xlMacintosh、xlWindows、xlMSDOS のいずれかです。 この引数を省略すると、現在のオペレーティング システムが使用されます。 |
Delimiter | ファイルがテキスト ファイルで、Format 引数が 6 の場合は、この引数は区切り記号として使用する文字を指定する文字列です。 たとえば、タブには Chr(9) を、カンマには “,"、セミコロンには “;" を使用し、またはカスタム文字を使用します。 文字列の最初の文字のみが使用されます。 |
Editable | 開こうとしているファイルが Excel 4.0 のアドインの場合、この引数に True を指定すると、アドインがウィンドウとして表示されます。 この引数に False を指定するか、この引数を省略すると、アドインは非表示の状態で開かれ、ウィンドウとして表示することはできません。 この引数は、Excel 5.0 以降で作成されたアドインには適用されません。開こうとしているファイルが Excel テンプレートの場合、 True を指定すると、テンプレートが編集用に開きます。 False を指定すると、テンプレートを基に新しいブックが開きます。 既定値は False です。 |
Notify | ファイルが読み取り/書き込みモードで開けない場合に、ファイルを通知リストに追加するには、True を指定します。 ファイルが読み取り専用モードで開かれて通知リストに追加され、ファイルが編集可能になった時点でユーザーに通知されます。 ファイルが開けない場合に、このような通知を行わずにエラーを発生させるには、 False を指定するか省略します。 |
Converter | ファイルを開く際に最初に試すファイル コンバーターのインデックスです。 指定されたファイル コンバーターが最初に試されます。このコンバーターがファイルを認識できない場合、他のすべてのコンバーターが試されます。 コンバーター インデックスは FileConverters プロパティで返されたコンバーターの行番号で構成されています。 |
AddToMru | 最近使用したファイルの一覧にブックを追加するには、 True を指定します。 既定値は False です。 |
Local | Excel の言語設定 (コントロール パネルの設定を含む) に合わせてファイルを保存するには、True を指定します。 Visual Basic for Applications (VBA) の言語設定に合わせてファイルを保存する場合は、False (既定値) を指定します。VBA の設定は、通常、Workbooks.Open を実行する VBA プロジェクトが Excel バージョン 5 または 95 の各国語版で作成されたプロジェクトでない限り、英語 (米国) になります。 |
CorruptLoad | 使用できる定数は、xlNormalLoad、xlRepairFile、xlExtractData のいずれかです。 このパラメーターに値が指定されていない場合の既定の動作は xlNormalLoad になり、OM を通じて開始するときに回復は行われません。 |