2016-04-08 2 views
0

Как я могу заставить скрипт загружать адреса электронной почты по одному из текстового файла, а не вводить электронное письмо вручную?Редактирование скрипта электронной почты для чтения адресов из файла

я получаю сообщение об ошибке: требуется

линия 6
объект:»
код 800A01A8

Что я делаю неправильно?

Dim fso 

Set objEmail = CreateObject("CDO.Message") 
objEmail.From = "[email protected]" 
Set dict = CreateObject("Scripting.Dictionary") 
Set file = fso.OpenTextFile ("C:\e.txt", 1) 
row = 0 
Do Until file.AtEndOfStream 
    line = file.Readline 
    dict.Add row, line 
    row = row + 1 
    objEmail.To = file 
    objEmail.Subject = "Test Email 2" 
    objEmail.Textbody = "This Is A Test Message" 
    objEmail.AddAttachment "C:\test.txt" 
    objEmail.Configuration.Fields.Item _ 
    ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 
    objEmail.Configuration.Fields.Item _ 
    ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "127.0.0.1" 
    objEmail.Configuration.Fields.Item _ 
    ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 
    objEmail.Configuration.Fields.Update 
    objEmail.Send 
Loop 
+0

Добро пожаловать в StackOverflow. Пожалуйста, взгляните на [как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) – user2807083

+0

'objEmail.AddAttachment" c: \ windows \ win.ini "' см. Https://msdn.microsoft.com/en-us/library/ms526914(v=exchg.10).aspx –

+0

Спасибо, что приложение теперь работает. – Recies

ответ

0

В вашей строке 6:

Set file = fso.OpenTextFile ("C:\e.txt", 1) 

fso пуст/не определено. Вам нужен

Set fso = CreateObject("Scripting.FileSystemObject") 

до.

Ваш

objEmail.To = file 

, вероятно, должен быть

objEmail.To = line 
+0

Спасибо, что исправлена ​​проблема. – Recies

+0

@Recies В этом случае рассмотрите [принятие ответа] (http://meta.stackoverflow.com/a/5235). Сделайте * не * отредактируйте ответ в свой вопрос. –

Смежные вопросы