変数 = SpreadsheetApp.これで、その範囲を示すRangeオブジェクトが得られます。ここから必要な情報をとり出し、処理を行っていくことになります。
getActiveRange();
変数 = 《Range》.getValue();getValueは、1つの値だけが得られます。複数のセルを選択してあった場合には、それらの中から一番最初に位置するセル(基本的には左上にあるセル)の値のみが得られます。
変数 = 《Range》.getValues();
変数 = 《Rnage》.getCell( 行 , 列 );このgetCellでは、選択範囲内の相対位置として行と列を指定します。例えば、getCell(1,1)ならば、選択範囲の左上にあるセルを示すRangeが返されます。シート全体における絶対位置ではないのです。ですから、Rangeから縦横の行数・列数だけ繰り返しを行うことで、選択されたすべての範囲を操作できるようになります。
変数 = 《Range》.getNumRows();これで選択範囲の列数・行数がわかりますから、これらの値を元にして繰り返しを行い、各セルを操作していけばよいでしょう。この他、選択されたセルがどこから始まっているのかを調べるのに、
変数 = 《Range》.getNumColumns();
変数 = 《Range》.getRow();このようなメソッドも用意されています。これはそのレンジが、シートの左上から何行目・何列目に位置しているかを調べるものです。これと、先ほどのgetNumRows/getNumColumnsを組み合わせることで、選択された範囲がシート内のどの領域にあるかを知ることができるでしょう。
変数 = 《Range》.getColumn();
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※選択範囲の値を合計 function myFunction() { var range = SpreadsheetApp.getActiveRange(); var vals = range.getValues(); var total = 0; for(objs in vals){ for(obj in vals[objs]){ total += vals[objs][obj] * 1; } } Browser.msgBox(total); } ※選択範囲のセルを操作 function myFunction(){ var range = SpreadsheetApp.getActiveRange(); var r = range.getNumRows(); var c = range.getNumColumns(); var total = 0; for(var i = 1;i <= r;i++){ for(var j = 1;j <= c;j++){ range.getCell(i,j).setValue(i + " * " + j + " = " + (i * j)); } } }
<< 前へ | 次へ >> |