处理大型VBA采集数据-过程太大错误

处理大型VBA采集数据-过程太大错误,vba,collections,Vba,Collections,我得到的过程编译错误太大 不确定如何重新构造以下代码 我们将不胜感激。多谢各位 Dim SpamList As VBA.Collection Set SpamList = New VBA.Collection With SpamList .Add "abc@gmail.com" .Add "abc@aol.com" '...Very large list - about 5000 entries .Add "abc@yahoo.com" End With D

我得到的过程编译错误太大

不确定如何重新构造以下代码

我们将不胜感激。多谢各位

Dim SpamList As VBA.Collection
Set SpamList = New VBA.Collection
With SpamList
    .Add "abc@gmail.com"
    .Add "abc@aol.com"

    '...Very large list - about 5000 entries

    .Add "abc@yahoo.com"
End With

Dim z as long
For z = 1 To SpamList.Count
    If current email address is in SpamList Then
        msgbox "Spam mail!"
        Exit For
    End If
Next

Set SpamList = Nothing

替换为SpamList
等,如下所示:

Dim FSO As Object
Dim fsList As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
Set fsList = FSO.OpenTextFile("c:\spamlist.txt")
Do Until fsList.AtEndOfStream
    SpamList.Add fsList.readline
Loop
fsList.Close

然后将所有条目移动到文本文件中,每行一条。

为什么要硬编码列表?将列表放入文本文件(或Excel或数据库)并从中读取不是更好吗