Excel VBA:删除字符前/后的所有内容,但右侧/左侧的两个字符除外

  • 本文关键字:字符 两个 删除 VBA Excel excel vba
  • 更新时间 :
  • 英文 :


我试图删除单元格中某个字符(例如'/'(前后的所有内容,但我想保留"的左/右2个字符/"(例如:"……xx/yy……"(。我知道如何使用星号("*"(查找和替换,但这对我保持左/右上的2个字符没有帮助

您可以通过在while循环Instr文档中指定start来循环所有出现的情况

Sub trimString()
'modify char and range accordingly
Dim char: char = "/"
Dim rng: Set rng = Selection
Dim charPos: charPos = InStr(rng.Value, char)
Dim trimmedStr: trimmedStr = ""
While charPos > 0
trimmedStr = trimmedStr & Mid(rng.Value, charPos - 2, 5)
charPos = InStr(charPos + 1, rng.Value, char)
Wend
rng.Value = trimmedStr
End Sub

最新更新