[英]InSTR or find function in VBA
我陷入一个问题。 我完成了研究,发现可以使用InSTR函数搜索字符串中的特定字符。
我想做的是获取从文件路径中提取的文件名。
目前我有
InStr(StrFrom(pName), "\")
这里的问题是,它返回第一个出现的斜杠,因为我想获取最后一个出现的斜杠(以便我可以使用包裹在上面代码中的“正确”功能来捕获文件名)
感谢您提供有关如何获取字符串中最后一个斜杠的任何帮助!
谢谢!
Instr
从文本字符串的InstrRev
开始看, InstrRev
从另一端开始看。
Public Function FileNameOnly(ByVal FileNameAndPath As String) As String
FileNameOnly = Mid(FileNameAndPath, InStrRev(FileNameAndPath, "\") + 1, Len(FileNameAndPath))
End Function
使用InStrRev()从字符串的右侧查找第一个出现的斜杠。
https://msdn.microsoft.com/zh-CN/library/t2ekk41a(v=vs.90).aspx
假设StrFrom是一些用户定义的函数,则下面的操作将满足您的要求:
Dim filename as String
Dim path as String
path = StrFrom(pName)
filename = Mid$(path, InstrRev(path, "\") + 1)
注意,由于InstrRev从字符串的左边返回字符位置,因此它比Right $更易于使用Mid $。 省略Mid $的最后一个参数,从该位置返回字符串的其余部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.