【发布时间】:2022-10-14 22:32:59
【问题描述】:
我正在尝试使用一系列单元格值从我的 Google 联系人列表中获取电子邮件。 我已经设法用一个值而不是一个范围/值列表来做到这一点。
在我的示例中,单元格 G2 包含名称 John Doe,我已设法从 G2 获取值,搜索我的联系人并返回相应的电子邮件。下一步是使用该返回值并将其写入同一张表中的另一个单元格,我也实现了这一点(将电子邮件地址写入 N2)。
我不知道如何对一系列单元格执行此操作,我尝试了许多不同的方法,但不断出错。
下面的代码仅适用于第一个单元格值,我尝试将范围更改为 (2, 7, 10, 1) 以获取前 10 个单元格值,看起来这部分工作正常,但我不是确定正确的方法是然后通过这个数组并获取电子邮件地址,最后运行一个循环将地址写入一系列单元格。
总而言之,我试图从 G2:G12 中获取一系列名称,将这些名称转换为电子邮件地址,并将结果写入 N2:N12。
下面的示例可以通过将代码复制到新的工作表文档中,将工作表命名为“Main”,向 G2 单元格添加名称并运行代码来复制。
function getEmail() {
var ss = SpreadsheetApp.getActiveSpreadsheet()
var sheet = ss.getSheetByName('Main');
var EmailRange = sheet.getRange(2, 7, 1, 1)
var EmailAddress = EmailRange.getValues()
var contacts = ContactsApp.getContactsByName(EmailAddress);
var email = contacts[0].getEmails()[0].getAddress();
Logger.log(email);
return email
}
function writeEmailsToSheet() {
var ss = SpreadsheetApp.getActiveSpreadsheet()
var sheet = ss.getSheetByName('Main');
var results = getEmail();
var range = sheet.getRange(2, 14, 1, 1);
range.setValue(results);
}
【问题讨论】:
-
到目前为止,您尝试了什么,遇到了什么错误?只要有可能,您需要包含一个重现问题的最小示例。您还可以包括预期行为、实际行为以及它们之间的差异,这也会很有帮助。请访问How to Ask 获取有关如何编写问题的一些提示,以便社区能够以更好的方式帮助您。
-
感谢 Lorena 的提醒,我添加了一些预期行为的摘要,最简单的示例是将代码复制到表格中并进行测试。我尝试了很多不同的东西,我不知道从哪里开始。我认为只希望解决问题比列出我的失败要好。
标签: google-chrome google-apps-script google-sheets