list - 如何将独特的单元格范围发送到列出的电子邮件?
问题描述
我是一名学校老师,正在为我的学校编写一份文件,以便能够按老师要求学生,但我在设置代码以将电子邮件发送给他们的 A2/B6 老师时遇到了很多麻烦。我需要帮助的部分过程是项目中的层,因此编译的数据非常复杂,过去两周我从 stackoverflow 中阅读了很多帮助,但我找不到任何可以显示我或甚至让我开始执行这项特定任务。
我有一排包含老师的电子邮件。在他们的电子邮件下方是一列学生姓名,旁边是另一行包含数据(请求教师的姓名)。我需要编写一个脚本,它将接收单元格“A2”中的电子邮件并将其发送到“A3:B20”中的数据范围,将单元格“C2”中的电子邮件发送给它“C3:D20”中的数据范围, 获取单元格“E2”中的电子邮件并将“E3:F20”中的数据范围发送给 75 位以上的教师,依此类推。
真的我的问题是,这可能吗?如果是这样,您是否有任何想法可以为我指明正确的方向,或者您是否有一段代码可以与我分享以帮助我开始。我是这个项目的谷歌脚本的新手,但我学到了很多东西。
任何帮助、见解或建议将不胜感激。
我在这里创建了一个带有计算机生成名称的虚拟文档,显示了我的工作表设置如下: https ://docs.google.com/spreadsheets/d/1QONEAxMQLBDKwgaXc4RwH_rgb_RzlxTkHl5euSSB9Wk/edit?usp=sharing
解决方案
希望这个简短的示例可以帮助您入门。
function myFunction() {
var hl='';
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Sheet1');
var subject='Enter Subject Here';
for(var col=1;col<sh.getLastColumn();col+=2){
var rg=sh.getRange(1,col,sh.getLastRow(),2);
var vA=rg.getValues();
var s='StudentName,RequestingTeacher\n';
var html='<table>';
html+='<tr><th>StudentName</th><th>RequestingTeacher</th></tr>';
for(var i=2;i<vA.length;i++){
html+=Utilities.formatString('<tr><td>%s</td><td>%s</td></tr>', vA[i][0],vA[i][1]);
s+=Utilities.formatString('%s,%s', vA[i][0],vA[i][1]);
}
html+='</table>';
//GmailApp.sendEmail(vA[0][0], subject, s, {htmlBody:html});
hl+=Utilities.formatString('RecipientName: %s<br />RecipientEmail:%s<br />Column: %s<br />' , vA[0][0],vA[1][0],col);
hl+=html;
hl+='<br /><br /><br />';
}
var ui=HtmlService.createHtmlOutput(hl);
SpreadsheetApp.getUi().showModelessDialog(ui, 'An Example of What Emails Body will look like.')
}
sendEmail 行已被注释掉,我使用一个对话框来向您展示电子邮件或多或少的样子。
这是我的对话框的样子:
RecipientName: Test Teacher
RecipientEmail:tteacher@schooldistrict.org
Column: 1
StudentName RequestingTeacher
Braydon Nichols
Kiley Lozano
Shania Olsen
Rodney Howell Duckworth
Tiana Shelton HOPE Squad
Stephen Wiggins Moore
Kael Rangel
Beau Pennington
Hezekiah Vincent Batman
Iyana Lewis Moore
Theodore Klein
Rubi Webster S. Ward
Natalee Wong Batman
Chris Rocha Batman
Eileen Smith
Kara Johnston
Carsen Waters Moore
Bria Schmitt Cotterell
Abby Yoder
Natalie Durham
RecipientName: Example Teacher
RecipientEmail:eteacher@schooldistrict.org
Column: 3
StudentName RequestingTeacher
Brandon Bean
Wade Cross
Jaxon Ford
Josie Barajas W. Smith
Aimee Ross
Maren Cox Batman
Kyle Morton
Beatrice Hill W. Smith
Stephen Carroll Batman
Anton Galvan
Marlie Neal Anderson
Alexander Andersen W. Smith
Jacquelyn Boyer
Nora Brennan
Derek Ayers
Van Obrien
Amari Rasmussen
Aiyana Collier Cotterell
Annalise Vance
Kieran Booker
RecipientName: Awesome Teacher
RecipientEmail:ateacher@schooldistrict.org
Column: 5
StudentName RequestingTeacher
Brooklynn Hahn W. Smith
Jenny Lutz W. Smith
Lilian Moreno HOPE Squad
Journey Travis
Kenna Lawson Anderson
Kathy Mccarthy
Dayanara Strickland Moore
Anna Knight
Kamron Osborne
Turner Mcintosh Cotterell
Tyrone Mullins
Selena Oneal
Tabitha Hernandez
Andreas Chan Batman
Dashawn Munoz HOPE Squad
Laylah Morse HOPE Squad
Jamie Anthony
Damion Duffy
Christina Donovan
Hugh Gomez
RecipientName: Dummy Teacher
RecipientEmail:dteacher@schooldistrict.org
Column: 7
StudentName RequestingTeacher
Payton Huerta Moore
Easton Pittman
Lyric Morrow HOPE Squad
Jada Richardson Batman
Jon Mckay HOPE Squad
Demetrius Horton Anderson
Lilly Atkinson
Spencer Mathews W. Smith
Jalen Hanna Dibb
Miracle Best
Emerson Frost
Colt Andersen Dibb
Leanna Gibbs
Liana Branch S. Ward
Jamie Mooney
Mara Escobar Dibb
Liliana Galloway Anderson
Jane Schmitt Cotterell
Aryan Melendez
Dalton Ritter
推荐阅读
- typescript - GAS/clasp:如何让自动完成/智能感知在 VSCode 中为 3rd 方库工作
- square-connect - 需要帮助使用 Square API 设置和销售剧院门票
- javascript - 如何在html表单中自动填充输入字段
- ios - 在 iOS 中分析文本到语音的字符串
- android - FragmentHostCallback 是在哪里创建的?
- c++ - 无法访问静态函数内部的私有变量
- reactjs - 将jsx文件转换为tsx后Reactjs“错误:ENOENT:没有这样的文件或目录,打开..”
- python-3.x - 如何将一个盒子形状的图层添加到 altair 图中?
- c# - 在 Asp.Net MVC 中执行原始 SqlQuery
- c# - EntityFunction.DiffDays 原因 此函数只能从 LINQ to Entities 调用