• ベストアンサー

EXCELファイルのカレントフォルダを取得するには?

EXCELファイルのカレントフォルダを取得するには? C:\経理\予算.xls D:\2005年度\予算.xls EXCEL97ファイルがあります。 VBAで   カレントフォルダ名 (C:\経理\,D:\2005年度\) を取得する事は可能でしょうか? CURDIRでは上手い方法が見つかりませんでした。

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

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

こんばんは。 Excel97 でも、同じですね。以下で試してみてください。 Sub test() 'このブックのパス a = ThisWorkbook.Path 'アクティブブックのパス b = ActiveWorkbook.Path 'Excelで設定されたデフォルトパス c = Application.DefaultFilePath 'カレントディレクトリ d = CurDir MsgBox "このブックのパス   : " & a & Chr(13) & _    "アクティブブックのパス: " & b & Chr(13) & _    "デフォルトパス    : " & c & Chr(13) & _    "カレントディレクトリ : " & d & Chr(13) End Sub

COS_BUSTER
質問者

お礼

いたれりつくせりですね。 ありがとうございます。 今、自宅から書き込んでるのですが CURDIRは使えますね。 会社では、うまく行かなかったのですが・・・

その他の回答 (3)

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

こんにちは。 >CURDIRは使えますね。 >会社では、うまく行かなかったのですが・・・ 私自身としては、 'アクティブブックのパス b = ActiveWorkbook.Path がよいと思っています。CurDir は、本来、ActiveWorkbook のフォルダとは無関係なのです。CurDir(CurrentDirectory =現在のフォルダ)というのは、Excelのアプリケーションで、「ファイル-開く」を行ったときに、開くフォルダーのことなのです。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

ブックを開いているのであれば Application.ThisWorkbook.Path でしょうけど、Excel97で動作するか、未検証。(2000はOK)

COS_BUSTER
質問者

お礼

Excel97でも使えます。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

=info("directory") では駄目ですか?

COS_BUSTER
質問者

補足

VBAではエラーが出ますが シートのセルに書くと使えますね。

関連するQ&A