Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 通过谷歌电子表格创建联系人组_Google Apps Script_Google Sheets_Contacts_Google Contacts Api - Fatal编程技术网

Google apps script 通过谷歌电子表格创建联系人组

Google apps script 通过谷歌电子表格创建联系人组,google-apps-script,google-sheets,contacts,google-contacts-api,Google Apps Script,Google Sheets,Contacts,Google Contacts Api,我正在尝试从谷歌表单创建电子邮件分发列表。然后我想把这些人放在一个特定的联络小组中。这是我到目前为止编译的代码。请帮忙。先谢谢你 function addContact() { var sheet = SpreadsheetApp.getActiveSheet(); var startRow = 3; var numRows = 10; // I want the rows to be infinite var dataRange = sheet.getRange(

我正在尝试从谷歌表单创建电子邮件分发列表。然后我想把这些人放在一个特定的联络小组中。这是我到目前为止编译的代码。请帮忙。先谢谢你

 function addContact() {
   var sheet = SpreadsheetApp.getActiveSheet();
   var startRow = 3;
   var numRows = 10;   // I want the rows to be infinite
   var dataRange = sheet.getRange(startRow, 2, numRows, 10)
   var data = dataRange.getValues();
   for (i in data) {
    var row = data[i];
    var firstName = row[1]; 
    var lastName = row[2];      
    var emailAdd = row[3];
  }
  // The code below creates a new contact and adds it to the "Work Friends" contact group
  var contact = ContactsApp.createContact(firstName, lastName, emailAdd);
  var group = ContactsApp.getContactGroup('Work Friends');
  group.addContact(contact);
  }

你很接近,只是需要一些调整。请参阅解释更改的在线注释

function addContact() {
  var sheet = SpreadsheetApp.getActiveSheet();
  // var startRow = 3;  // This implies you have two header rows...
  var headerRows = 2;                   // Number of header rows to skip
  // var numRows = 10;   // I want the rows to be infinite (so use getDataRange)
  var dataRange = sheet.getDataRange(); // Range containing all non-blank rows & cols
  var data = dataRange.getValues();     // Read all data
  data.splice(0,headerRows);            // Remove header rows
  for (i =0; i<data.length; i++) {      // Avoid using for..in with arrays
    var row = data[i];
    var firstName = row[1]; 
    var lastName = row[2];      
    var emailAdd = row[3];

    // Do this IN the loop vvv

    // The code below creates a new contact and adds it to the "Work Friends" contact group
    var contact = ContactsApp.createContact(firstName, lastName, emailAdd);
    var group = ContactsApp.getContactGroup('Work Friends');
    debugger;  // Pause if running in debugger, to examine state
    group.addContact(contact);
  }
}
函数addContact(){
var sheet=SpreadsheetApp.getActiveSheet();
//var startRow=3;//这意味着您有两个标题行。。。
var headerRows=2;//要跳过的标题行数
//var numRows=10;//我希望行是无限的(因此使用getDataRange)
var dataRange=sheet.getDataRange();//包含所有非空行和列的范围
var data=dataRange.getValues();//读取所有数据
data.splice(0,headerRows);//删除标题行

对于(i=0;我非常感谢你。我正在创建一个电子邮件通讯组列表,并添加联系人。你介意解释几件事吗:(1)我不理解“data.splice”。(2)如果我创建一个触发器,例如“On form submit”,那么“for”会不会每次都创建重复的联系人?你帮了我很大的忙。再次感谢你。JLS