Как отправить электронную почту листа Excel из Excel для Mac

Я хочу отправлять автоматическую электронную почту от Excel в определенное время дня ежедневно, когда рабочий лист является сообщением в теле письма. Я использую Excel для Mac, но в этом случае я не могу найти Send Email to Recipient. Также не работают следующие скрипты vba:

Function MailFromMacwithOutlook(bodycontent As String, mailsubject As String, _ toaddress As String, ccaddress As String, bccaddress As String, _ attachment As String, displaymail As Boolean) Dim scriptToRun As String scriptToRun = scriptToRun & "tell application " & _ Chr(34) & "Microsoft Outlook" & Chr(34) & Chr(13) scriptToRun = scriptToRun & _ "set NewMail to make new outgoing message with properties" & _ "{content:""" & bodycontent & """, subject:""" & mailsubject & """}" & Chr(13) If toaddress <> "" Then scriptToRun = scriptToRun & _ "make new to recipient at NewMail with properties" & _ "{email address:{address:""" & toaddress & """}}" & Chr(13) If ccaddress <> "" Then scriptToRun = scriptToRun & _ "make new cc recipient at NewMail with properties" & _ "{email address:{address:""" & ccaddress & """}}" & Chr(13) If bccaddress <> "" Then scriptToRun = scriptToRun & _ "make new bcc recipient at NewMail with properties" & _ "{email address:{address:""" & bccaddress & """}}" & Chr(13) If attachment <> "" Then scriptToRun = scriptToRun & "make new attachment at NewMail with properties" & _ "{file:""" & attachment & """ as alias}" & Chr(13) End If If displaymail = False Then scriptToRun = scriptToRun & "send NewMail" & Chr(13) Else scriptToRun = scriptToRun & "open NewMail" & Chr(13) End If scriptToRun = scriptToRun & "end tell" & Chr(13) If Len(toaddress) + Len(ccaddress) + Len(bccaddress) = 0 Or mailsubject = "" Then MsgBox "There is no To, CC or BCC address or Subject for this mail" Exit Function Else On Error Resume Next MacScript (scriptToRun) On Error GoTo 0 End If End Function Function MailFromMacWithMail(bodycontent As String, mailsubject As String, _ toaddress As String, ccaddress As String, bccaddress As String, _ attachment As String, displaymail As Boolean) Dim scriptToRun As String scriptToRun = scriptToRun & "tell application " & _ Chr(34) & "Mail" & Chr(34) & Chr(13) scriptToRun = scriptToRun & _ "set NewMail to make new outgoing message with properties " & _ "{content:""" & bodycontent & """, subject:""" & _ mailsubject & """ , visible:true}" & Chr(13) scriptToRun = scriptToRun & "tell NewMail" & Chr(13) If toaddress <> "" Then scriptToRun = scriptToRun & _ "make new to recipient at end of to recipients with properties " & _ "{address:""" & toaddress & """}" & Chr(13) If ccaddress <> "" Then scriptToRun = scriptToRun & _ "make new cc recipient at end of cc recipients with properties " & _ "{address:""" & ccaddress & """}" & Chr(13) If bccaddress <> "" Then scriptToRun = scriptToRun & _ "make new bcc recipient at end of bcc recipients with properties " & _ "{address:""" & bccaddress & """}" & Chr(13) If attachment <> "" Then scriptToRun = scriptToRun & "tell content" & Chr(13) scriptToRun = scriptToRun & "make new attachment with properties " & _ "{file name:""" & attachment & """ as alias} " & _ "at after the last paragraph" & Chr(13) scriptToRun = scriptToRun & "end tell" & Chr(13) End If If displaymail = False Then scriptToRun = scriptToRun & "send" & Chr(13) scriptToRun = scriptToRun & "end tell" & Chr(13) scriptToRun = scriptToRun & "end tell" If Len(toaddress) + Len(ccaddress) + Len(bccaddress) = 0 Or mailsubject = "" Then MsgBox "There is no To, CC or BCC address or Subject for this mail" Exit Function Else On Error Resume Next MacScript (scriptToRun) On Error GoTo 0 End If End Function Function KillFileOnMac(Filestr As String) 'The VBA Kill command on a Mac will not work with long file names(28+ characters) Dim ScriptToKillFile As String ScriptToKillFile = ScriptToKillFile & "tell application " & Chr(34) & _ "Finder" & Chr(34) & Chr(13) ScriptToKillFile = ScriptToKillFile & _ "do shell script ""rm "" & quoted form of posix path of " & _ Chr(34) & Filestr & Chr(34) & Chr(13) ScriptToKillFile = ScriptToKillFile & "end tell" On Error Resume Next MacScript (ScriptToKillFile) On Error GoTo 0 End Function 

И это:

 Sub Mail_workbook_Excel2011_1() 'For Excel 2011 for the Mac and Apple Mail 'Note: The workbook must be saved once Dim wb As Workbook If Val(Application.Version) < 14 Then Exit Sub Set wb = ActiveWorkbook With wb MailFromMacwithOutlook bodycontent:="Hi there", _ mailsubject:="Testing", _ toaddress:="[email protected]", _ ccaddress:="", _ bccaddress:="", _ attachment:=.FullName, _ displaymail:=True End With Set wb = Nothing End Sub 

Может ли кто-нибудь помочь мне в том, как это можно сделать в Excel для Mac?

Interesting Posts

Кластерная таблица столбцов Excel 2013 в VBA

Импорт пользовательских функций, написанных в F # Использование Excel DNA в подпрограммах VBA

Как добавить ярлык для группировки кнопок внутри ленточного меню в vsto addin development

Почему вставка текстового файла в Excel сокращает предложение в середине

Прокрутите строки и выберите динамический диапазон столбцов для редактирования.

Excel Power Query – повторное использование запросов в других книгах

Заказ строк по умолчанию для выбора запроса в oracle

Создание графика Excel с использованием переменных для определения ячейки

Невозможно индексировать по метке времени в кадре данных pandas

Анализ HTML для воссоздания таблиц в документе Word с использованием VBA

Сделать Excel Slicers Перейти к значениям, выбранным другими slicers

Заменить для одного и того же последующего слова в excel

Скопируйте ячейки, если условия выполнены – excel

Excel VBA задал несколько ячеек с одинаковым значением

Записанный макрос испортил формат времени в экспортированном csv BUT csv, экспортированный во время записи, имел желаемый формат времени

Давайте будем гением компьютера.