私はこれを取得していません。同じ行のあるセルから別のセルに値をコピーしたいだけです。シンプルですよね?1 つのセルだけでなく、すべてのセル (右側) に値が入力されます。私はこれについて頭を悩ませましたが、何かを理解していないだけだと思います。
/* This gets the entire sheet (range) doesn't it? */
var range = SpreadsheetApp.getActiveSheet().getDataRange();
var rowRange ;
var status ;
var notes ;
var i=981;
var theEnd=979;
for (; i > theEnd; i--) {
rowRange = range.offset(i, 0, 1); // Doesn't this specify one row (range) ?
status = rowRange.offset(0, statusColumnOffset).getValue(); // one cell, right?
notes = rowRange.offset(0, notesColumnOffset).getValue();
/* it gets the correct value for notes */
if (notes == "No Number") {
// copy notes cell to status cell
/* I've tried both this (first attempt): */
//rowRange.offset(0, statusColumnOffset).setValue("No Number");
/* and this (second attempt): */
statusCell = rowRange.offset(0, statusColumnOffset);
statusCell.setValue("No Number");
/* both give the same results */
}
「rowRange.offset(0, statusColumnOffset).setValue("No Number");」を最初に試した理由がわかりません。それがしたことをしました。1つのセルの値をうまく取得します。では、なぜ同じコード (取得ではなく設定以外) で、各セルの値が設定された完全な行になるのでしょうか?? 2回目の試行で同じ(間違った)結果が得られる理由について、私は困惑しています。私が理解していないのは何ですか?
ありがとうございました