OK、問題は、幅と高さに関するすべての情報なしで範囲を明示的に設定する方法がないことです。13 個のセルがある場合、なぜ 13 個のセルを書き込まないのでしょうか? したがって、ここにスクリプトがあります:
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var targetSheet = ss.getSheetByName("Analytics");
var entries = [{
name : "Read Data",
functionName : "readRows"
}];
ss.addMenu("Script Center Menu", entries);
var rows = targetSheet.getDataRange();
var numRows = rows.getNumRows();
var values = rows.getValues();
targetSheet.getRange(1,1,values.length,values[0].length).setValues(values);
values[1] = readRows();
rows.setValues(values);
};
readRows()
値の配列を返します。それはうまくいきましappendRow()
たが、すべての複雑さなしにテーブルの2行目をオーバーライドする方法を見つけることができません. 私はすべてを試しました。このようにして、不適切な範囲の高さについて不平を言い続けます。他のいくつかの方法では、配列全体を行の各セルに書き込みました。私はこれがどのように機能するのか理解できません。それはまったく非論理的なようです。
setRow(2, readRows())
つまり、配列内の値とまったく同じ数のセルを取り、その前に書き込まれたものがある場合はそれをオーバーライドするようなものを探しているということです。