在单元格的一部分中更改特定字符

戈兰B

我想更改文本中的特定内容,因此需要找到所有的“;” 字符并将其更改为“ $”,但前提是它们在方括号中。

因此,可能有少数情况:

示例1文字(可以;不可以);好的应该是:文本(可以,$可以,不可以);

示例2文字(可以;不可以);好的(tekst;)好的应该是:文本(可以,$可以,不能);好的(tekst $)好的

示例3文字(可以;(可以;)不可以);应该是:text(没关系,$($)没关系);

所以我从替换字符串代码开始,但是问题是我的代码现在即使在“)”之后也替换了字符,我不想要那样。

我应该以某种方式计算需要更改的字符串并设置开始位置并仅更改它们吗?但是然后的问题是,如果我们有更多的括号,它将无法正常工作。

最好的方法是什么?

Sub Removetext()
s = Range("A1").Value

Dim start As Integer
Dim end1 As Integer
start = InStr(1, s, "(")
end1 = InStr(1, s, ")")

s = Left(s, start - 1) & Replace(s, ";", "$", start)

End Sub
SJR

这是一种避免正则表达式的方法,因为我使用正则表达式的方式不足以记住如何进行正则表达式。

Sub x()

Dim i As Long, lb As Long, rb As Long, r As Range

Range("A1:A4").Copy Range("B1")

For Each r In Range("B1:B4")
    For i = 1 To Len(r.Value)
        If Mid(r, i, 1) = "(" Then lb = lb + 1
        If Mid(r, i, 1) = ")" Then rb = rb + 1
        If Mid(r, i, 1) = ";" Then
            If lb > 0 And rb < lb Then r.Characters(i, 1).Text = "$"
        End If
    Next i
Next r

End Sub

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

减去单元格的一部分

第二次出现特定字符后,如何删除单元格中字符串的一部分?

将单元格的一部分更改为粗体

我如何使用python在Excel单元格中仅加粗字符串的一部分

使用单元格中的值作为图纸参考的一部分

在 HTML 表格中隐藏单元格的一部分

VB Excel中替换单元格循环中的单词的一部分

更改Excel Forumla的一部分以包含来自另一个单元格的数据

Excel-根据另一个单元格的一部分计算特定值

更改变量的字体颜色作为单元格中文本的一部分

在CSV中找到字符串的一部分,并用新条目替换整个单元格?

将单元格的一部分与另一列进行比较

如果单元格碰巧是非连续范围的一部分,则通过excel vba更改单元格的值

如何将DataFrame单元格中的一部分字符串转换为数字以进行过滤?

如何将一个单元格中的一部分字符串替换为另一单元格中的字符串?

将一个单元格中的字符串(的一部分)添加到同一系列中的另一个单元格中,然后遍历整个列

如何在Excel的VBA中仅匹配单元格值的一部分而不是完全匹配?

Python pptx-单元格中具有不同颜色的文本的一部分

UITableViewCell仅突出显示单元格的一部分?

修改可伸缩单元格一部分的格式

Excel网格线是单元格的一部分还是多余的空间?

选择单元格作为要执行的代码的一部分

将单元格的值用作宏的一部分

您如何提取单元格的第一部分?

查找并替换一列中所有单元格的一部分字符串,使用单独表格中单元格中的文本作为查找条件

使用VBA宏在一个单元格中查找并替换其下面的单元格值替换字符串的一部分

Excel:将单元格格式中显示的文本集识别为单元格文本的一部分

您可以从单元格中剥离一部分值吗?

如何循环遍历范围内一部分列中的单元格?