Email 使用Google脚本发送outlook公司组邮件
用剧本谈论公司一天的截止日期 将所需选项卡从电子表格复制到临时文件,再次提取所需范围,将其转换为Excel,然后将其上载到Google Drive。 此外,电子邮件作为附件随Excel一起发送 如果我通过将问题发送到我在公司内的个人电子邮件地址进行测试,则该问题可以正常工作。 但是,它应该发送和接收到一个特定的Outlook邮件“组”,其中有几个人属于该公司,但脚本可以工作,但邮件不会从该“组”接收 对于未从G-suit帐户接收到Outlook的部分,我在“组”设置中设置了“编辑>允许外部邮件接收”,但仍然未收到 使用MailApp脚本发送时,无法检查发送到Outlook的邮箱中的历史记录。 收到的邮件也会发送到G-suit帐户。我想检查Gmail历史记录,但由于公司安全政策,访问受到限制 您需要什么帮助Email 使用Google脚本发送outlook公司组邮件,email,google-apps-script,outlook,Email,Google Apps Script,Outlook,用剧本谈论公司一天的截止日期 将所需选项卡从电子表格复制到临时文件,再次提取所需范围,将其转换为Excel,然后将其上载到Google Drive。 此外,电子邮件作为附件随Excel一起发送 如果我通过将问题发送到我在公司内的个人电子邮件地址进行测试,则该问题可以正常工作。 但是,它应该发送和接收到一个特定的Outlook邮件“组”,其中有几个人属于该公司,但脚本可以工作,但邮件不会从该“组”接收 对于未从G-suit帐户接收到Outlook的部分,我在“组”设置中设置了“编辑>允许外部邮件接
提前感谢。根据
MailApp
文档:
发送电子邮件
该服务允许用户发送电子邮件,并完全控制电子邮件内容。与GmailApp
不同,MailApp
的唯一目的是发送电子邮件MailApp
无法访问用户的Gmail收件箱
因此,如果您想使用应用程序脚本向Outlook地址发送电子邮件,MailApp
是这种情况下的适当选择
至于接收电子邮件,您可能需要仔细检查您输入的电子邮件地址以及组的具体设置。
参考文献
function sendEmail(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var spreadsheetId = ss.getId();
var sheet = ss.getSheetByName("sheet33");
var range = sheet.getRange("A1:K");
var tempSheet = ss.insertSheet(`sheet33_temp`);
range.copyTo(tempSheet.getRange("A1"), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
range.copyTo(tempSheet.getRange("A1"), SpreadsheetApp.CopyPasteType.PASTE_COLUMN_WIDTHS, false);
range.copyFormatToRange(tempSheet, 1, 1, 1, 1);
SpreadsheetApp.flush();
var tempSheetId = tempSheet.getSheetId();
var spreadsheetName = tempSheet.getSheetName();
var url = "https://docs.google.com/spreadsheets/d/" + spreadsheetId + "/export?format=xlsx&gid=" + tempSheetId ;
// dd
var date = new Date();
date.setDate(date.getDate() + 1);
var dd = Utilities.formatDate(date , "GMT+9", "yyyyMMdd") ;
var token = ScriptApp.getOAuthToken();
var response = UrlFetchApp.fetch(url, {
headers: {
'Authorization': 'Bearer ' + token
},
muteHttpExceptions: true
});
var blobs = response.getBlob();
blobs.setName(`${spreadsheetName}_${dd}.xlsx`)
var folder = DriveApp.getFolderById('123456asdfK');
backupFile = folder.createFile(blobs);
var receipient = `grp_k@asdf.onmicrosoft.com`
var subject = spreadsheetName + `_${dd} List Share.
var message = spreadsheetName + `_${dd} List Share.
Thanks.`
MailApp.sendEmail(receipient, subject, message, {attachments: blobs});
Browser.msgBox(`${spreadsheetName}${dd} ${receipient} Send Complete.`, Browser.Buttons.OK);
ss.deleteSheet(tempSheet);
}