我正在尝试在app脚本中创建一个函数,每当我将数据标签和数据点传入函数时,都会生成图表:
makePiChart(LabelRange,DataRange)
labelRange:1月,2月,3月.... DataRange:5,4,3,.......
但是,当我尝试单击一个单元格并使用范围参数键入函数时,我收到错误。
我首先尝试测试是否可以获得单张图表的图表输出。
这是我的代码。
function makePiChart() {
var ss = SpreadsheetApp.openById("#Id for Spreadsheet")
SpreadsheetApp.setActiveSpreadsheet(ss)
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("January");
sheet1.activate()
var chart = sheet1.newChart()
.setChartType(Charts.ChartType.PIE)
.addRange(sheet1.getRange("C4:C11"))
.addRange(sheet1.getRange("H4:H11"))
.setPosition(5,5,0,0)
.setOption("Issues","Dynamic Chart")
.build();
return sheet1.insertChart(chart);
}
现在,这会像我预期的那样为1月工作表生成图表。
但是,我想创建一个概括此过程的函数。因此,如果我在电子表格中找到一些表单,说我整年都有一个电子表格,我会转到1月表,2月表,3月表等,如果我点击单元格并输入
makePiChart(Rangeforlabels,RangeforData)
我将获得仅使用这些数据范围制作的饼图对象。
基本上,我不想继续修改脚本来生成图表对象。我希望能够在任何单元格中键入= makePie(labelRange,DataRange)并显示图表对象。它的位置无关紧要。