以下のようなデータがあるとき
カナの列に「サシスセソ」を入力する
ということをやった時に書いたコードです
コード.gsvar sh = SpreadsheetApp.getActiveSheet();
function set_value() {
var header = "カナ";
var value = "サシスセソ";
var headers = get_headers()[0];
var row = sh.getLastRow() + 1;
var col = headers.indexOf(header) + 1;
sh.getRange(row, col).setValue(value);
}
function get_headers() {
var last_col = sh.getLastColumn();
var range = sh.getRange(1, 1, 1, last_col);
var headers = range.getValues();
return headers;
}
|
意訳.gs今開いているシートを取得する この処理は以下を実行する 入力したい列の値 入力したい値 1行目のすべての値を取得して 入力したい行(最終行の次の行)を取得して 入力したい列をみつけて 入力したい値を入力する この処理は以下を実行する 値が入っている最終列を取得して 1行目の1列目から1行分、last_col列までの 値を取得して 返す |
おまけ
var headers = get_headers()[0];
の[0]について
function get_headers() {}内でreturnしているheadersの中身を
ログに出して見てみるとこのようになっている
get_headers()で返ってくるのが [[かな, カナ, 半角カナ]]なので
get_headers()[0]とすると[かな, カナ, 半角カナ]を取得できる
ログに出すコード.gs
function get_headers() {
var last_col = sh.getLastColumn();
var range = sh.getRange(1, 1, 1, last_col);
var headers = range.getValues();
Logger.log(headers);
return headers;
}
参考
https://developers.google.com/apps-script/reference/spreadsheet/sheet


