google spreadsheet - How to run a script that will set values on different sheet -
i share short piece of code. have trouble. when run script in google spreadsheet, works in 1 sheet ("vt.attivita") , not in second 1 ("pratica(ref)"). want formula can in sheet , else in 1 sheet. used "var sheet = ss.getsheetbyname" doesn't seem work...
//----------------------------------------------------------------------- colonna bj -------------------------------------------------------------------(formula su tutte le celle delle ultime 20 righe della colonna)-- // formula su tutte le celle delle ultime 20 righe della colonna "% pratica" var ss = spreadsheetapp.getactivespreadsheet(); var sheet = ss.getsheetbyname("vt.attivita"); var firstrow = sheet.getlastrow()-19 var cell = sheet.getrange(firstrow, 62, 20); cell.setformula('=if(bi' + firstrow + '="";"";average(filter(bi:bi;j:j=j' + firstrow + ';not(bh:bh="");a:a="ru")))'); //----------------------------------------------------------------------- colonne a:bj ---------------------------------------(incolla solo valori di formule sulle celle di tutte le ultime 20 righe di queste colonne)-- //incolla solo valori (tutto) var ss = spreadsheetapp.getactivespreadsheet(); var sheet = ss.getsheetbyname("vt.attivita"); var destination = ss.getsheetbyname("vt.attivita"); var firstrow = sheet.getlastrow()-19 var range = source.getrange('a' + firstrow +':bj'+sheet.getlastrow()); range.copyvaluestorange(destination, 1, 62, firstrow, sheet.getlastrow()); //--------------------------------------------------------------------------------- eseguiformulepraticaref --------------------------------------------------------------------------------- // cancella tutto var ss = spreadsheetapp.getactivespreadsheet(); var sheet = ss.getsheetbyname("pratica(ref)"); var lastrow = sheet.getlastrow(); var range = sheet.getrange('a2:a' + lastrow); range.clear({contentsonly: true}); //formula su cella a2 filter var a2 = sheet.getrange(2, 1); a2.setformula('=sort(unique(filter(vt.attivita!j:j;row(vt.attivita!j:j)>1)))'); // incolla solo valori var source = ss.getsheetbyname("pratica(ref)"); var destination = ss.getsheetbyname("pratica(ref)"); var range = source.getrange('a1:a'+sheet.getlastrow()); range.copyvaluestorange(destination, 1, 1, 1, sheet.getlastrow());
here's simple script change value in sheets in spreadsheet unless a1 has value.
function myfunction() { var ss=spreadsheetapp.getactive(); var allsheets=ss.getsheets(); for(var i=0;i<allsheets.length;i++) { if(!allsheets[i].getrange(1,1).getvalue()) { allsheets[i].getrange(1,1).setvalue(i+1); } } }
Comments
Post a Comment