2015年10月11日日曜日

google apps scriptでこんな関数をつくた 無駄なところがきっとありますがご愛嬌で

function myFunction() { //必須関数のようだ
  GetAllSheet()
}

function GetAllSheet() { //全シートのある部分を抽出し合計をだす
  var objSheets
  objSheets = SpreadsheetApp.getActiveSpreadsheet().getSheets(); //全シートのインスタンス?
  var intMaxIndex = objSheets.length; //全シート数
  var f25nitto = 0;
  var f26sagaku = 0;
  var objgokeiSheets

  var objgokei = SpreadsheetApp.getActiveSpreadsheet();
 var gokeic2 = objgokei.getSheetByName("合計"); //シートの名前を指定しインスタンスゲット

  for (intIndex = 0; intIndex < intMaxIndex; intIndex++) {
    Logger.log(objSheets[intIndex].getName());
    Logger.log(objSheets[intIndex].getRange("F25").getValue());
 
    if(objSheets[intIndex].getRange("F25").getValue()) {
    f25nitto = f25nitto + objSheets[intIndex].getRange("F25").getValue();
    Logger.log(f25nitto); //ログ出力
    f26sagaku = f26sagaku + objSheets[intIndex].getRange("F26").getValue();
    Logger.log(f26sagaku);
    }
 
  }
  Logger.log(gokeic2.getRange("C2").setValue(f25nitto));
  Logger.log(gokeic2.getRange("C3").setValue(f26sagaku));
}

シートにボタンなどを図形描画して、それをクリックすると関数をおこすには図形描画▼の▼を押すとリストが表示され、その中にスクリプトを割り当てがあるので、それを選択し関数名を入力☆