Всякий раз, когда я запускаю приведенный ниже код vba, он говорит о недопустимом использовании нового ключевого слова - PullRequest
0 голосов
/ 29 мая 2020

Используя этот код, я пытаюсь отправить Excel как вложение через Outlook

   Sub SendOutlook()
       'Declaring Variables
       Dim OutlookApp  As Outlook.Application
       Dim OutlookEmail  As Outlook.MailItem

       'Assigning variables to create outlook application and mailitem
       Set OutlookApp = New Outlook.Application
       Set OutlookEmail = New Outlook.MailItem

       With OutlookEmail
          'Format of the mail
          .BodyFormat = olFormatPlain
          'Body of the mail
          .Body = "Dear Someone" & vbNewLine & "How are you?"
          'To whom you want to send mail
          .To = "Someone@somewhere.com"
          'Subject of mail
          .Subject = "Write Subject Here"
          'TO add an attachment
          .Attachments.Add ActiveWorkbook.FullName
          'sends the mail
          .Send
        End With

    End Sub

Ответы [ 2 ]

1 голос
/ 29 мая 2020

Вы не можете создать MailItem через New. Он должен быть создан с использованием CreateItem объекта приложения Outlook.

   Set OutlookApp = New Outlook.Application
   Set OutlookEmail = OutlookApp.CreateItem(olMailItem)
0 голосов
/ 29 мая 2020

Насколько я узнал из исследования, доступ Programmati c к отправке электронных писем представляет собой угрозу безопасности, поэтому он не разрешен через VBA.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...