google-apps-script - 谷歌应用脚​​本: Move data between spreadsheets

标签 google-apps-script google-sheets

我正在尝试使用 Google Apps 脚本在两个 Google 电子表格之间移动数据。

名为 Ex_ID 的电子表格对于每个员工都有一张表和一行,每行有六个重要值,包括一个 ID 号和五个数据值。

名为 CR_ID 的电子表格为每个员工都有一个不同的工作表,每个工作表都有一个 ID 号和五个需要输入数据的单元格。

我正在尝试编写一个脚本,将数据值从 Ex_ID 移动到 ID 值匹配的 CR_ID。 (注意:由于我仍在尝试了解代码如何工作,因此我将示例限制为五个数据值之一,并且仅在三名员工身上进行测试。)

function myFunction() {
  var CR_ID = "1BbAmoSsS_2-nvOxv_l5gZ8ftXclD5muWs0ZAmkDUR-Y";
  var ssCR = SpreadsheetApp.openById(CR_ID);
  var sCR = ssCR.getSheets();
  var Ex_ID = "1lkpXdWdbfe8Wkj1RGQOb-pWjEQe41hstKj2i4TxMQd8";
  var ssEx = SpreadsheetApp.openById(Ex_ID);
  var sEx = ssEx.getSheetByName('Sheet1');
  for (var i = 2; i = 4; i++) {
    //Get id value from Ex_ID 
    var ExCell = sEx.getRange(i, 2).getValue();
    for (var j = 0; j = 2; j++) {
      var sheet = sCR[j];
      //Get id value from CR_ID
      var val = sheet.getRange(1, 7).getValue();
      if (ExCell[i] == val[j]) {
        var ExWrite = sEx.getRange(i, 11).getValue();
        sheet.getRange(3, 20).setValue(ExWrite);
      }    
    }  
  }
}

最好,

梅恩德拉

最佳答案

我不知道您的数据是如何组织的以及您想将它们放在表格上的位置,但我会尝试这样的操作:

function myFunction() 
{
  var ess = SpreadsheetApp.openById("1BbAmoSsS_2-nvOxv_l5gZ8ftXclD5muWs0ZAmkDUR-Y");
  var es = ess.getSheets();

  var dss = SpreadsheetApp.openById("1lkpXdWdbfe8Wkj1RGQOb-pWjEQe41hstKj2i4TxMQd8");
  var ds = dss.getSheetByName('Sheet1');
  var dr = ds.getDataRange();
  var dA = dr.getValues();
  for(var i=1;i<dA.length;i++)//started with 1 assuming that you have a header.  
  {
      var row=dA[i];//loop through rows of employee data I will assume data to be in this  ID,DataValue1,DataValue2,DataValue3,DataValue4,DataValue5
      for(var j=0;j<es.length;j++)
      {
        if(row[0]==es[j].getSheetName())//checking the ID value assuming it is row[0];
        {
          var sht=es[j];
          sht.getRange('D1').setValue(row[1]);//DataValue1
          sht.getRange('D2').setValue(row[2]);//DataValue2
          etc...
        }

      }
  }

}

关于google-apps-script - 谷歌应用脚​​本: Move data between spreadsheets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46203704/

相关文章:

google-apps-script - 谷歌电子表格脚本编辑器 : delete a project

google-apps-script - 部署 Google 应用脚本以在未经用户授权的情况下运行

使用 Google App 脚本的电子邮件名称 - 让用户名出现在收件人电子邮件的 "From"部分中

javascript - 查询错误 : Invalid JSON string when Creating a Chart from a Spreadsheet? GAS

google-apps-script - getA1Notation 脚本始终返回 A1 作为事件单元格或选择

google-apps-script - 使用 MailApp.sendEmail 发送电子邮件两次

javascript - Google 脚本 - 无法写入单个二维数组元素

html - 使用 angularjs 将 html 表导出到 Google 电子表格

javascript - 忽略 Google 表格自定义脚本中的空单元格

google-apps-script - 检查谷歌电子表格中是否存在工作表