0
我在写一个宏来读取电子邮件并解析正文。为此,我需要用换行符分割。拆分字符串并存储到Outlook宏中的列表/数组中
我写 -
Dim stringList As Variant
Set stringList = Split(myMessage.Body, vbLf)
Debug.Print stringList(0)
但它说类型不匹配。我如何解决它?
我在写一个宏来读取电子邮件并解析正文。为此,我需要用换行符分割。拆分字符串并存储到Outlook宏中的列表/数组中
我写 -
Dim stringList As Variant
Set stringList = Split(myMessage.Body, vbLf)
Debug.Print stringList(0)
但它说类型不匹配。我如何解决它?
不要使用Set
由Split()
函数返回的数组分配给您的stringList
变量。 Set
关键字用于assign an object reference。
因为您已经知道要分配的值的类型,所以最好将stringList
声明为String的数组而不是Variant
。
还有一件事,你可能想分割字符串使用vbNewLine
而不是vbLf
。
这应该工作:
Sub SplitMsgBody()
Dim stringList() As String
stringList = Split(myMessage.Body, vbNewLine) 'or vbLf depending on your requirements.
For Each s In stringList
Debug.Print s
Next
End Sub
希望有所帮助。