我需要 Excel 中的宏来扫描邮箱特定文件夹中的所有 Outlook 电子邮件,该宏从主题字段、电子邮件正文和括号中包含的自动签名中提取任何数据,并将其发送到 Excel 中的各个行。但是,我想使用标记 R1、R2、R3、R4、R5、R6,以便标记 R1 的括号中的数据被吐出到我的 Excel s/sheet 的第 1 行,标记为 R2 的括号中的数据被吐出到第 2 行等等
标记 R1-R6 是原始电子邮件的一部分
我对此完全没有经验,并且一直在尝试将不同的 VBA 代码组合到我的 Excel 宏中以完成所有这些工作,但进展还不够。我找不到专门回答这个问题的地方,尽我所能。我将非常感谢您的帮助:)
这可以帮助您处理文本部分。
在电子邮件部分顺序固定的前提下,即R5始终为第一,R3为第二,依此类推。
您将使用两个重要的功能:
FIND
- 当搜索可以从字符串的中间开始时,帮助您找到文本字符串中的任何字符。MID
- 帮助您从字符串中间提取文本。通过使用
FIND
函数,我们将找到第一个 (
和其后的 )
。
如果我将文本放入 A1 中,公式将如下所示:
=FIND("(",A1,1)
结果是 26。=FIND(")",A1,FIND("(",A1,1))
结果是 56。现在可以用MID功能完全提取R5了:
=MID(A1,FIND("(",A1,1)+1,FIND(")",A1,FIND("(",A1,1))-FIND("(",A1,1)-1)
结果是:R5 James Bond Film Production
因此,您向前移动,每次在上一个
(
结束处开始搜索时,都会寻找下一个 )
。
祝你好运