質問: エクセルvbaでセルに入力したパスでブックを開く excel2013で、あるファイルを使用している時に、別のブックを開きたいとして、 例えば、d:\oshiete\desktop\2014年\開きたい.xlsm とt6セルにいれてあり、vbaを読み込むと開くようにするにはどうすればよいでしょうか? はじめに、エラー回避でファイルが存在しているのと、まだ開いていないことを確認してから動かしたいです。 色々やってみたけどうまくいかなかったので、よろしくお願いいたします。
回答: >vbaを読み込むと開くようにする すいません、ブックを開いたときに同時に開くではなく、 vba読み込み時に開く場合は vbeから、挿入→標準モジュールで標準モジュールを挿入し 以下のコードを貼り付けてください。 alt+f8または表示→マクロから「指定ファイルを開く」を選び実行で t6セルのファイルを開きます。 コードの内容はno1と同じものですが、補足致します。 末尾「'★」は同様で、末尾「'☆」の行の「t6」を変更することで 対象のセルアドレスを変更できます。 ■vbaコード sub 指定ファイルを開く() dim i as integer dim filepath as string filepath = range("t6").value '☆ if dir(filepath) = "" then msgbox filepath & vbcrlf & "はファイルが見つかりません。" '★ exit sub end if for i = 1 to workbooks.count if filepath = workbooks(i).fullname then msgbox filepath & vbcrlf & "は既に開いています。" '★ exit sub end if next i workbooks.open filename:=range("t6").value end sub