Страницы: 1
RSS
Как создать письмо "Иванов И.И. от имени Пупкина П.П." VBA
 
Доброго дня :)

Собственно код для письма взял тут >>>
Что нужно добавить и куда в код, чтобы при формировании письма, отправлялось от другого имени.
Ручками то я могу выбрать. после создания письма. а вот как кодом.

P.S. гугл упорно не хочет давать ответом на мои вопросы. мб я неправильно его спрашиваю.
 
Код
.SentOnBehalfOfName = "123@mail.ru"
Изменено: Дмитрий(The_Prist) Щербаков - 18.05.2020 11:22:33
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Дмитрий(The_Prist) Щербаков написал:
.SentOnBehalfOfName
это в том случае когда именно так отправляем, но скорее всего надо менять учетку от имени которой работа ведется.
По вопросам из тем форума, личку не читаю.
 
Дмитрий(The_Prist) Щербаков, Спасибо большое, протестировал. всё работает.

БМВ, У нас админы выдают на учётку права пользователю, что он может отправлять письма от имени компании (чтобы не палить свою рабочую почту)
 
Цитата
Wild.Godlike написал:
У нас админы выдают на учётку права пользователю,
ну сам меня сбили указав 123@mail.ru
По вопросам из тем форума, личку не читаю.
 
Здравствуйте, чтобы не создавать одну и ту же тему, помогите вставить эту строку кода в основной код, чтобы от другого имени отправлять письма
Код
Option Explicit
  
Sub Send_Mail()
    Dim objOutlookApp As Object, objMail As Object, Wb As Workbook
    Dim sTo As String, sSubject As String, sBody As String, sAttachment As String
  
    Application.ScreenUpdating = False
    On Error Resume Next
    '??????? ??????????? ? Outlook ???? ?? ??? ??????
    Set objOutlookApp = GetObject(, "Outlook.Application")
    Err.Clear 'Outlook ??????, ??????? ??????
    If objOutlookApp Is Nothing Then
        Set objOutlookApp = CreateObject("Outlook.Application")
    End If
    objOutlookApp.Session.Logon
    Set objMail = objOutlookApp.CreateItem(0)   '??????? ????? ?????????
    '???? ?? ?????????? ??????? ?????????? ??? ???????? ????????? - ???????
    If Err.Number <> 0 Then Set objOutlookApp = Nothing: Set objMail = Nothing: Exit Sub
     
    sTo = "Кому отправляем"    '????(????? ???????? ????????? ?? ?????? - sTo = Range("A1").Value)
    sSubject = "Автоотправка"    '???? ?????(????? ???????? ????????? ?? ?????? - sSubject = Range("A2").Value)
    sBody = "Прайс R8"    '????? ??????(????? ???????? ????????? ?? ?????? - sBody = Range("A3").Value)
      '????????(?????? ???? ? ????? ????? ???????? ????????? ?? ?????? - sAttachment = Range("A4").Value)
     
     
    ActiveSheet.Copy
    Set Wb = ActiveSheet.Parent
    Wb.SaveAs Filename:=sAttachment, _
              FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Wb.Close (False)
     
     
    '??????? ?????????
    With objMail
        .To = sTo '????? ??????????
        .CC = "" '????? ??? ?????
        .BCC = "" '????? ??? ??????? ?????
        .Subject = sSubject 'Автоотправка
        .Body = sBody 'Прайс R8
        '.HTMLBody = sBody '???? ?????????? ??????????????? ????? ?????????(??????, ???? ? ?.?.)
        .Attachments.Add ActiveWorkbook.FullName  '????? ????????? ???????? ????? ?????? sAttachment ??????? ActiveWorkbook.FullName
        .Send ', ???? ?????????? ??????????? ?????????, ? ?? ?????????? ??? ?????????
    End With
  
    Set objOutlookApp = Nothing: Set objMail = Nothing
    Application.ScreenUpdating = True
End Sub
Страницы: 1
Наверх