string - Excel VBA 复杂字符串替换

标签 string vba excel

有没有办法找到字符串中的子字符串,然后替换该子字符串及其前后的多个字符?

例如,我有这些:

Mandatory659852 y n n TRY RACE
Mechanica888654 y n n FRY SAME
GILLETE685254 y n n CRY FACE

我可以编写 VBA 程序来删除子字符串 "y n n " 包括子字符串左侧的任意 6 个字符和右侧的任意 3 个字符吗?所以结果应该是:

"Mandatory RACE"
"Mechanica SAME"
"GILLETE FACE"

我无法在 Google 上进行搜索,因为我不知道这个词是什么。我知道我可以在 VBA 中使用 .replace 来替换子字符串,但我不知道如何按字符数使用通配符,例如 .replace(****** y n n ***)

最佳答案

VBA:

您使用 ? 来匹配单个通配符。

只需突出显示单元格并运行此宏。

您也可以在“查找/替换”对话框中使用它。

Sub FixIt()
Selection.Replace "?????? y n n ???", "", xlPart
End Sub

Results

关于string - Excel VBA 复杂字符串替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41023102/

相关文章:

python - 关于 Python 首词

javascript - 来自字符串的 Jquery JSON 数组

excel - 无法在函数内将数据写入 Excel 2007/2010 中的 VBA 单元格

c# - 保存上传到 azure 网站的文件

regex - 替换两个字符串之间所有出现的字符

c - 关于 C 中的指针和 strcpy()

excel - 时间计算类型不匹配

vba - 为什么 CDate ("0/5/14") 返回 5/14/2000?

excel - 如何在 Excel VBA 电子邮件中添加签名?

excel - 如何为整个工作表重复宏