コメントは名前/URLを選択していただければ入力出来ます。

2015年11月2日月曜日

SVKを自動集計するためのスクリプト

0 件のコメント :
3日ほど勉強して作成したもの

進行表をSVKを対象にデータを抜き出せる形に編集

function PGSslice() {
 var ss = SpreadsheetApp.getActiveSpreadsheet();
 var sheet = ss.getActiveSheet();
 var last_row = sheet.getLastRow();
 
 for (var i = 1; i <= last_row; i++) {
 var string = sheet.getRange("A" + i).getValue();
 var start = string.indexOf("、");
 var end = string.indexOf("【");
 var kills = string.lastIndexOf("】 が ")
 var kille = string.lastIndexOf("【")
 var length = string.slice(start+1,end);
 var length02 = string.slice(kills,kille);

 sheet.getRange("B" + i).setValue(length);
 sheet.getRange("C" + i).setValue(length02);
 var string02 = sheet.getRange("C" + i).getValue();
 var length03 = string02.replace("】 が ","");
 sheet.getRange("C"+ i).setValue(length03);
 }
}

上のスクリプト実行後にSVKRシートにSVを殺害したプレイヤーにポイントを加点する

function myFunction() {
   var ss = SpreadsheetApp.getActiveSpreadsheet();
 var sheetex = ss.getSheetByName('extract');
 var sheetsvkr = ss.getSheetByName('SVKR'); 
 var last_row = sheetex.getLastRow();
  
   for (var i = 1; i <= last_row; i++) {
 var stringYOKO = sheetex.getRange("B" + i).getValue();
 var stringTATE = sheetex.getRange("C" + i).getValue();
     var searchYOKO = sheetsvkr.getRange("A1:W1");
     var searchdeath = searchYOKO.getValues();
     var deathary = Array.prototype.concat.apply([],searchdeath);
     var flyYOKO = deathary.indexOf(stringYOKO);

if(flyYOKO <0)
  continue;
  var searchTATE = sheetsvkr.getRange("A:A");
  var searchkill = searchTATE.getValues();
  var killary = Array.prototype.concat.apply([],searchkill);
  var flyTATE = killary.indexOf(stringTATE);
  

while(flyTATE < 0){
       sheetsvkr.appendRow([stringTATE]);
       var searchTATE = sheetsvkr.getRange("A:A");
  var searchkill = searchTATE.getValues();
  var killary = Array.prototype.concat.apply([],searchkill);
  var flyTATE = killary.indexOf(stringTATE);
     }

var countset = sheetsvkr.getRange(flyTATE+1,flyYOKO+1).getValue();
      sheetsvkr.getRange(flyTATE+1,flyYOKO+1).setValue(countset+1);

      
     }
     }


SVKに初めて出てくる名前だと最終行に追加してるのだけど、合計欄に関数入れるの、カンマ23個も入れないで済む方法無いか…そもそも関数入れられるのかこれ?
別名対応は最後に入れる予定。

0 件のコメント :

コメントを投稿