2015年11月2日月曜日
SVKを自動集計するためのスクリプト
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個も入れないで済む方法無いか… そもそも関数入れられるのかこれ?
別名対応は最後に入れる予定。
登録:
コメントの投稿
(
Atom
)
0 件のコメント :
コメントを投稿