s = "E:\xx\xx.ini"
i = InStrRev(s, "\") ' 得到最后一個\字符的位置
s = Mid$(s, i + 1) ' 截取最后那段字串
uj5u.com熱心網友回復:
Private Sub Form_Load()
Dim XX As String, A As Integer, B As Integer
XX = "E:\xx\xx\XXX\XX\XXX\AA.ini"
B = Len(XX) '得到字串的長度
A = InStrRev(XX, "\") '檢測最后一個“\”號的位置
XX = Right(XX, B - A) '截取字串后面 B-A 位置的字串
'最后變數 XX 是 "AA.ini",適合路徑不論多長,均可以得到檔案名 + 擴展名
End Sub
uj5u.com熱心網友回復:
split.可以解決
uj5u.com熱心網友回復:
樓主是要取目錄吧。倒序查找是正解。
Dim s$, i&
s = "E:\xx\xx.ini"
MsgBox Left(s, InStrRev(s, "\"))
uj5u.com熱心網友回復:
那些說用 Split的,都是“只要能出結果就行,不管運行效率”的人。
uj5u.com熱心網友回復:
用split的估計都看錯題了吧。不是取檔案名,而是去目錄啊。非要用split也可以的。
Dim s
s = Split("E:\xx\xx.ini", "\")
s(UBound(s)) = ""
MsgBox Join(s, "\")
uj5u.com熱心網友回復:
是你看錯了吧,樓主就是要“檔案名”,不是要目錄。
uj5u.com熱心網友回復:
s = split( "E:\xx\xx.ini" , "\" )
msgbox s( ubound(s) )
用split的估計都看錯題了吧。不是取檔案名,而是去目錄啊。非要用split也可以的。
Dim s
s = Split("E:\xx\xx.ini", "\")
s(UBound(s)) = ""
MsgBox Join(s, "\")
是你看錯了吧,樓主就是要“檔案名”,不是要目錄。
真看錯了
uj5u.com熱心網友回復:
Dim s As String
s = "E:\xx\xx.ini"
Dim s1 As String
s1 = Replace(s, "E:\xx", "")