街中で見かけて「グッときた人」の思い出

アクセス2000を使っています。
D:\test\image\image.bmp
上記したようなファイル名のフルパスから、下記のようにフォルダ名のみを取り出したいのですがうまくいきません。
 D:\test\image\

InStr関数で"\"の位置を抽出して、left関数で抽出した位置より左側のデータを取り出そうと思ったのですが、InStr関数では、最初に見つかった"\"の位置を抽出してしまうため、left関数で取り出した値が下記のようになってしまい、正確なデータが取り出せません。どうしたらいいでしょうか?
 d:\

A 回答 (1件)

instr()だと こうですが・・・・・・・・・・



dim tmp
dim last

last = 0
do
tmp = instr(last, fullpath, "\")
if tmp = 0 then
exit do
endif
last = tmp
loop

foldername = left(fullpath, last)

最近のヴァージョンでは、instrrev()があるので、

foldername = left(fullpath, instrrev(fullpath, "\"))
でいいかと思います。

#実はわたし、この質問で instrrev() を知った・・
    • good
    • 0

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