Hello StackOver流动人员,
我对VBA语言和工作流程比较陌生,但我有一些编码经验。标题没有真正帮助解释的问题是:
我每天都收到一封电子邮件,其中包含我需要提取的信息并移入相应的单元格。电子邮件的示例如下所示,我将其从Outlook复制到我名为“RawData”的excel工作表中。我会将列标记为 A)
**A)** Send Date
01/01/2014 Timestamp
**B)** Subject
([Type]) word IndetifierOne IndetifierTwo word 100001
**C)** Body
Item HYPERLINK (www.thistheexample.com/100001) Subitem Name HYPERLINK (www.thistheexample.com/name/99321)keyword **All this Information is irrelevant** Item Names
HYPERLINK (www.thistheexample.com/name/99321)keyword HYPERLINK (www.thistheexample.com/name/99321)keyword HYPERLINK (www.thistheexample.com/name/99321)keyword
需要提取并按顺序放置在列中的是
**A)** Date
**B)** Identifier Two
**C)** This has other information input into it later manually
**D)** Identifier One **E)** keyword sometimes has more than one line in it separated by a , will vary often
**F)** Timestamp
**G)** (www.thistheexample.com/100001) this one needs to be a HYPERLINK, the part before the "/" is always the same the IdValue "100001" will change
**H)** IdValue from (www.thistheexample.com/100001) which would be 100001
要重新考虑我需要帮助的是,我不确定如何将所有这些信息排序并放入不同工作表上的正确单元格中,我一直在梳理StackOverFlow,Mr.Excel for帮助和指导,但已与信息发生冲突。我正在寻找建议或我可以操纵的事情来做这件事,谢谢你。我们也尝试了许多不同的想法,但没有一个能够完成我对T所需要的,使这项任务大部分都是自动化的。
感谢您的帮助和时间。
答案 0 :(得分:0)
我并不总是理解您的描述,因为我无法确定您的解释是否是电子邮件的一部分,或者只是向我们展示它是什么。
如果电子邮件的结构相同,我就不会使用VBA。只是公式:
提取日期:在工作表A1中
= MIDDLE(RawData!A1,SEARCH(“”,RawData!A1,1)+ 1,LENGTH(RawData!A1)-SEARCH(“”,RawData!A1,1))
这将从工作表RawData单元格A1中提取所有空格。如果您的日期格式始终相同(例如“16/02/2014” - 10个字符),则确保不提取任何其他内容,您可以尝试: = MIDDLE(RawData!A1,SEARCH(“”,RawData!A1,1)+1,10)
如果您想使用VBA: 中间选项建立在: 日期=中(细胞(1,1),5,10)
可以调用搜索功能: SpacePlace = Application.WorksheetFunction.Search(“”,Cells(1,1),10)