如果我们给出字符串中第一个和最后一个字母的位置,我们如何从字符串中提取子字符串?
Dim my_string As String
Dim my_substring As String
my_string="Excel/Sheet1.xls"
instrrev(my_string,"/")
给出6(开始位置)
len(my_string)
给出16(结束位置)
所以得到" Sheet1.xls"作为我的子串我们该怎么做?
或者我们可以选择字符直到" /"首先得到满足/
答案 0 :(得分:4)
这个怎么样?
my_substring = Split("Excel/Sheet1.xls","/")(1)
答案 1 :(得分:2)
Mid(my_string,instrrev(my_string,"/")+1, len(my_string))
会给你Sheet1.xls
。
答案 2 :(得分:0)
这个解决方案怎么样:
Dim strFileName As String
strFileName = ActiveWorkbook.Path & "/" & ActiveWorkbook.Name
Debug.Print "Start Position: " & Len(strFileName) - InStr(1, StrReverse(strFileName), "/")
Debug.Print "Extacted file name: " & Mid(strFileName, Len(strFileName) - InStr(1, StrReverse(strFileName), "/") + 2)