excel - 查找并替换 2 个符号之间长度可变的字符串
问题描述
我已经查看了所有内容,但找不到如何替换两个特殊字符之间的单词的命令。我想删除两个括号之间的所有内容。
我只设法删除了一个特殊字符“(”,但没有删除括号之间的整个单词。
结果应该如何:
示例 - 之前:26125 Oldenburg (Oldenburg), Alexandersfeld
示例 - 之后:26125 Oldenburg, Alexandersfeld
Option Explicit
Sub Bereinigen()
Dim Text As String
'Text = ActiveSheet.Cells(1, 1)
Text = "26125 Oldenburg (Oldenburg), Alexandersfeld"
If InStr(Text, "(") > 0 Then
Dim strSearchFor As String
Dim strReplaceWith As String
Dim strNewText As String
strSearchFor = "("
strReplaceWith = ""
strNewText = Replace(Text, strSearchFor, strReplaceWith)
Debug.Print strNewText
End If
End Sub
解决方案
如果您正在编写 VBA 过程,那么您可以使用Left
,Mid
和的组合InStr
:
Sub sRemoveBracketData()
Dim strData As String
strData = "26125 Oldenburg (Oldenburg), Alexandersfeld"
If (InStr(strData, ")") > 0) And (InStr(strData, ")") > 0) Then
strData = Left(strData, InStr(strData, "(") - 1) & Mid(strData, InStr(strData, ")") + 1)
Debug.Print strData
End If
End Sub
使用工作表函数可以实现类似的结果:
=IFERROR(LEFT(A15,FIND("(",A15)-1) & MID(A15,FIND(")",A15)+1,999),A15)
问候,
推荐阅读
- java - 我们可以在不循环的情况下将地图数组转换为模型实体类[POJO]的数组吗?
- android - 将我的 ionic 应用程序 apk 上传到 Google Play 控制台时出错
- php - 检查已经存在的用户名或不是 MySQL,PHP
- oracle - 验证在 oracle apex 的页面提交上不起作用
- android - 如何在控制台上显示所选项目
- java - Java 程序在 netbeans 中编译,但不在 CMD 中,包不存在
- arduino - Arduino 发送不一致的 UDP 消息
- javascript - 添加到使用 JavaScript 生成的输入字段的数据库数组
- python - 在下载之前使用下载链接检查视频文件大小的代码?[编辑]
- python - 美汤去标