利用InStrRev函数,分离文件名和后缀
时间: 2024-09-08 18:04:52 浏览: 38
`InstrRev` 函数通常在某些编程语言中用于查找字符串中的特定字符序列从后向前的位置。在Excel VBA中,`InstrRev` 作用于一个字符串并返回子串开始位置的索引,该子串是从字符串的右侧开始,按照指定的搜索顺序找到的。
如果你想利用 `InstrRev` 来分离文件名和后缀(例如 `.txt`),可以遵循这样的步骤:
1. 首先,确定文件名和后缀分隔点的位置。假设你想找的是最后一个`.`之前的所有字符作为文件名,你可以使用 `InstrRev` 查找最后一个`.`的位置。
```vba
Dim filename As String, extension As String
Dim lastDotIndex As Long
filename = "example.txt" ' 假设这是你要处理的文件名
lastDotIndex = InstrRev(filename, ".")
```
2. 然后,通过截取字符串来获取文件名和后缀。如果 `lastDotIndex` 不等于 0,则表示有后缀,否则整个字符串就是文件名。
```vba
If lastDotIndex > 0 Then
extension = Mid(filename, lastDotIndex + 1) ' 后缀从 lastDotIndex+1 开始
filename = Left(filename, lastDotIndex) ' 文件名到 lastDotIndex 结束
Else
extension = "" ' 如果没有`.`,则认为整个都是文件名
End If
```