【问题标题】:VBA Macro to extract strings from word docVBA宏从word doc中提取字符串
【发布时间】:2013-11-11 20:58:20
【问题描述】:

我有一个包含多个字符串的 word 文档。这些字符串的第一部分始终相同,例如 ABC_001、ABC_002、ABC_003。我需要在文档中搜索“ABC_”子字符串,提取所有出现(“ABC_001”、“ABC_002”、“ABC_003”)并将它们复制到 Excel 工作表中。 有人可以帮忙吗?

提前致谢。

【问题讨论】:

  • 请告诉我们您尝试了什么?要求代码的问题必须表明对正在解决的问题的最低限度的理解。包括尝试的解决方案、它们为什么不起作用以及预期的结果。另见:Stack Overflow question checklist
  • 对不起,我是 VBA 新手,我还没有尝试任何解决方案,因为我没有找到从子字符串开始搜索字符串的方法,但总是相反,找到一个字符串中的子字符串,这不是我需要的。在尝试任何尝试之前,我应该解决这个搜索问题。

标签: vba excel


【解决方案1】:

您可以参考 VBScript 正则表达式 5.5 并对其进行正则表达式。 看看http://www.macrostash.com/2011/10/08/simple-regular-expression-tutorial-for-excel-vba/

http://txt2re.com/

还有一些VBA multiple matches within one string using regular expressions execute method

编辑: 实际上,去数据和“获取外部数据”选择分隔符和导入可能更容易,手动或录制宏以了解 vba 结构。

这应该让您获得单独单元格中的所有条目,然后使用 MID 遍历它们以获得您需要的部分

【讨论】:

  • 您好,感谢您的回答,但如果我理解正确,MID 会在字符串中搜索多个字符。我正在寻找一个从子字符串开始提取整个字符串的函数(如果存在)。搜索“ABC_”以提取“ABC_001”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-17
  • 2018-12-21
相关资源
最近更新 更多