• ベストアンサー

EXcelのマクロで相対パスでファイルを開く

Excelでマクロを使って他のブックを開こうとしています。 同じフォルダ内のブックを開くには Workbooks.Open Filename:=ThisWorkbook.Path & "\ブック名.xls" で開く事が出来たのですが、一つ上の階層にあるブックを開きたいときはどのようなコマンドを使えば良いのでしょうか?? お教え下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.1

Workbooks.Open Filename:=ThisWorkbook.Path & "\..\ブック名.xls" フォルダ名「..」で親フォルダを参照できます。

oonabe777
質問者

お礼

お返事遅くなりました。 教えていただいた方法で解決しました。 ありがとうございました。

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 ご質問の「相対パス」なら、#1さんが正解だと思いますし、Current Directory を移動させてしまえば、ファイル名の指定も、パスなしで指定できます。 ただ、私の場合は、だいたい、以下のようなコードを書くことが多いです。 '-------------------------------------------   Dim fName As String   Dim mPath As String   mPath = ThisWorkbook.Path   fName = "Test1.xls"   i = Len(mPath) - Len(Replace(mPath, "\", ""))   If i > 1 Then     mPath = Mid(mPath, 1, InStrRev(mPath, "\") - 1)   Workbooks.Open mPath & "\" & fName   End If   '-------------------------------------------

oonabe777
質問者

お礼

お返事遅くなりました。 #1(Trick--o--さん)の方法で行いました。 しっかり勉強してWendy02さんのようにマクロをかけるように頑張ります。

関連するQ&A