将Outlook电子邮件正文复制到.csv

时间:2015-05-15 08:55:06

标签: vba csv outlook outlook-vba outlook-2010

运行代码后,我得到运行时错误9(下标超出范围)

我收到了这一行的错误:

xlSheet.Range("K" & rCount) = Trim(varItem(1))

我查看了代码,似乎无法弄清楚我做错了什么或错过了什么。

这是代码&看下面我的电子邮件正文是什么

            '// Customer
            If InStr(1, varText(i), "Customer") > 0 Then
                varItem = Split(varText(i), Chr(58))
                xlSheet.Range("A" & rCount) = Trim(varItem(1))
            End If


            '// Service Level
            If InStr(1, varText(i), "Service Level") > 0 Then
                varItem = Split(varText(i), Chr(58))
                xlSheet.Range("K" & rCount) = Trim(varItem(1))
            End If

enter image description here

2 个答案:

答案 0 :(得分:2)

Chr(58)) 切换为 Chr(9))' horizontal tab

varItem = Split(varText(i), Chr(9))

查看VBA [Chr]

答案 1 :(得分:1)

对于Split结果,我通常会这样做:

Dim varItem() As String

varItem = Split(varText(i), Chr(58))

这可能有用,因为Trim()是一个文本功能。

之后,最好的猜测是Chr(58) = ":"中没有varText(i),因此varItem(1)将超出范围。尝试使用varItem(0)只是为了查看它是否有效,或使用MsgBox InStr(1,varText(i), Chr(58))