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

VBAでパスを取得するとします。
例えば、
A:\BBBB\CCCC\DDDD\EEEE.TXT
この時パスを次のように分割をしようとしています。
PATH1=A:\BBBB\CCCC\DDDD\
PATH2=EEEE.TXT
といった具合です。
これらの作業をどのようにプログラミングすれば良いのかわかりません。
情けない質問ですが、ご教授お願いします。

A 回答 (2件)

If文なしで出来ました。


Sub test02()
s = "A:\BBBB\CCCC\DDDD\EEEE.TXT"
x = Split(s, "\")
y = x(UBound(x))
MsgBox y
End Sub
最近出来た関数InStrRevでも、Instr関数でも出来ます。
Sub test03()
s = "A:\BBBB\CCCC\DDDD\EEEE.TXT"
x = InStrRev(s, "\")
y = Mid(s, x + 1, Len(s) - x)
MsgBox y
End Sub
Sub test04()
s = "A:\BBBB\CCCC\DDDD\EEEE.TXT"
st = 1
p01:
x = InStr(st, s, "\")
If x = 0 Then GoTo p02
st = x + 1
GoTo p01
p02:
y = Mid(s, st, Len(s) - st + 1)
MsgBox y
End Sub
    • good
    • 0
この回答へのお礼

早速の回答有難うございます。
大変わかりやすく助かりました。
また、様々なプログラムまで添えてください良く理解できました。

お礼日時:2004/06/17 21:37

文字列中に「¥」が複数有り、一番最後の「¥」を知るのは「InStrRev関数」を使います。



あとはその文字位置で「Left関数」で前半を、「Right関数」で後半を切り出します。
    • good
    • 0

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