0

特定の列を取得して2番目のシートに表示するだけでなく、特定のセル内の値に基づく条件の両方のために、あるシートからセル情報を取得して別のシートにコピーするスクリプトをGoogle Apps Scriptで作成しようとしています。桁。これが私がこれまでに持っているものです:

function onMyEdit() {
  var myMaster    = SpreadsheetApp.openById("xxxxx");
  var masterSheet = myMaster.setActiveSheet(myMaster.getSheets()[0]);
  var myNames     = SpreadsheetApp.openById("xxxxx");
  var namesSheet  = myNames.setActiveSheet(myNames.getSheets()[0]);
  var row1        = masterSheet.getRange(1, 1, masterSheet.getLastRow(), 1);
  var rowV        = row1.getValues();
  var firstArray  = masterSheet.getDataRange().getValues();
  var dataList    = [];
  for (var i = 1; i < rowV.length; i++) {
    dataList.push(firstArray[i][0]);
    dataList.push(firstArray[i][1]);
    dataList.push(firstArray[i][2]);
    dataList.push(firstArray[i][3]);

  }
  for (var j = 0; j < rowV.length - 1; j++) {
    namesSheet.getRange(2, j + 1, 1, 1).setValue(dataList[j]);
  }
}

そのため、現時点では、2 行目から 1 行でのみ機能します (列ヘッダーを許可するため)。そして、セルデータに基づいて条件付きで行を取得したい場合は、「for」ループ内の条件に「if」ステートメントを使用しますが、データを両方のシートで次に使用可能な行にコピーしたいと思います。「 getLastRow + 1 」などのようなものを使用すると思います。データの量とその目的のために、このコードをできるだけ効率的にする必要があります。私はプログラミングにかなり慣れていないので、詳細に説明してください。もう一度感謝します。

4

1 に答える 1