dポイントプレゼントキャンペーン実施中!

教えてください。

下記のフォルダとファイルがあります。

C:\........\main\DIR\excel1.xls
c:\........\main\dir2\excel2.CSV
\mainの下にDIR,DIR2がありますが、常に\mainの場所は不定です。

DIRの下にあるEXCEL1.xlsにあるブックにマクロ記述をして、
EXCEL2.CSVを書き出すマクロを書きたいのですが・・・

ActiveWorkbook.pathにてディレクトリは参照できるのですが、
簡単にこの親のディレクトリを参照できる方法はないでしょうか?

A 回答 (3件)

(1)Application.Path


(2)CurDir
(3)ActiveWorkBook。Path 保存前 空白
           保存後読み出したもの 保存フォルダ
(4)何かファイルを書き出そうとしているが、そのファイルの収納場所
のうち(4)ですね。
絶対的に、文字列でコードの中で指定し、それと(2)(3)は関連付けて考えなくて良いのでね。
  (A)文字列から
  (B)今あるところから 
の(A)らしいが。
それならInStrRev関数(使えないバージョンではInStr関数を使って
やや複雑)で解決すると思いますがそれでよいのでしょうか。(#1のご回答)文字列の切り出しの問題。
またVBScript式(FSO)では
objFS.GetParentFolderName (#2のご回答)
で直下(子)から、直上(親)を順次辿れます。
文字列の切り出しでもあり、フォルダーファイル実態の親名。
    • good
    • 0

FileSystemObject の GetParentFolderName が使えますよ。



  With CreateObject("Scripting.FileSystemObject")
    sPath = .GetParentFolderName(ThisWorkbook.Path)
  End With
  sPath = sPath & "\dir2\excel2.CSV"
  MsgBox sPath
    • good
    • 0

簡単に参照するコマンドはわかりませんが、


 myPath = ActiveWorkbook.Path
 親 = Left(myPath, InStrRev(myPath, "\") - 1)
などでも……
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!