• ベストアンサー

相対パスが使えない

EXCELのファイルを呼び出したいのですが,絶対パスで e:\vb6.0\book1.xls と指定するとファイルが開くのですが, 相対パスで .\book1.xls と指定するとファイルが開けません。 なぜでしょうか? EXCELのファイルとvbのファイルは同じフォルダ内にあります.

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

  • ベストアンサー
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.2

> EXCELのファイルとvbのファイルは同じフォルダ内にあります. VBA実行時のカレントパス(相対パスの基準)が同じフォルダとは限らないからでは? 確か、マイドキュメントとかになっていたハズ。 ChDir ActiveWorkbook.Path などとして、カレントパスを移動してみてください。

ekueku
質問者

お礼

ありがとうございます。 自分は初心者なのでカレントパスを移動というのは よくわからないので絶対パスにしておきます。

その他の回答 (4)

  • Azzuri
  • ベストアンサー率68% (34/50)
回答No.5

..\book1.xlsです。

  • takasebou
  • ベストアンサー率42% (61/144)
回答No.4

VBで開く時は基本的に絶対パスです。 app.path で自アプリのパスをとってあげて指定してください。 カレントパスを変更して指定する方法もありますが、あまりお薦めできません。 ちなみにVBで実行した時には、起動時に自アプリとカレントパスは一緒にならなかったと思います。

回答No.3

Wizard_Zeroと申します。 ファイルはどうやって開いていますか? VBで直接開く場合以外は、絶対パスで開いた方が確実だと思います。

  • at121
  • ベストアンサー率41% (85/206)
回答No.1

カレントパスが違う。  ?curdir

関連するQ&A