2013-06-28 3 views
1

В настоящее время у меня есть код VBA, который выбирает пользовательский диапазон, а затем отправляет указанную выбранную область в список электронных писем, которые у меня есть на другом листе. Я добавил код, но этот код скопирован и вставлен 8 раз (есть 8 блоков) ... Idk, если это имеет значение, но просто подумал, что я должен предоставить как можно больше информации. Это мои две проблемы:Код VBA для отображения электронной почты вместо автоматической отправки

1) Как отобразить окно электронной почты в Outlook вместо автоматической отправки (я уже пробовал .Item.Display и не работает, поэтому любые альтернативы или любые другие методы рекомендуют) 2) Как сохранить выбранный диапазон в соответствии с его форматом (часть текста красная, но после отправки по электронной почте отображается как текст по умолчанию).

Заранее спасибо.

 For Each aCell In Worksheets("Email List").Range("B3:B" & Cells(Rows.Count, "B").End(xlUp).Row) 
      If aCell <> "" Then 
        eTo = eTo & aCell & ";" 
       End If 
    Next 
    eTo = Left(eTo, Len(eTo) - 1) 
    If IsEmpty(Range("B4")) Then 
    Else 
     ActiveSheet.Range("a3", ActiveSheet.Range("e3").End(xlDown)).Select 
     ActiveWorkbook.EnvelopeVisible = True 
    With ActiveSheet.MailEnvelope 

     .Item.To = eTo 
     .Item.Subject = "Allocations - Barclays" & Format(Date, " mm/dd/yyyy") 
     .Item.Send 
    End With 
    End If 

ответ

0

Я использую это и он работает - это показывает почту, но может быть изменен:

With OutMail 
     .To = mailName ' This is the name of the person to review the documents. 
     .CC = "" 
     .BCC = "" 
     .Subject = "Please review the attached." 
     .HTMLBody = RangetoHTML(rng) 
     .Display 'or use .Send 
    End With 

Взгляните на http://www.rondebruin.nl/win/s1/outlook/bmail2.htm Это имеет отличную информацию о почте диапазон с прогнозом от первенствует.