我正在尝试通过Google电子表格在Apps脚本中创建一个简单的TableChart。只是电子表格中的值,没有公式。这是我到目前为止的代码:
function doGet() {
var ss = SpreadsheetApp.openById('0******************c');
var sss = ss.getSheetByName('Base Data');
var data = sss.getDataRange();
var timeframeFilter = Charts.newCategoryFilter().setFilterColumnIndex(0).build();
var locationFilter = Charts.newCategoryFilter().setFilterColumnIndex(2).build();
var monthFilter = Charts.newCategoryFilter().setFilterColumnIndex(1).build();
var yearFilter = Charts.newCategoryFilter().setFilterColumnIndex(6).build();
var tableChartRet = Charts.newTableChart()
.setDataViewDefinition(Charts.newDataViewDefinition().setColumns([0,2,1,6,10,35,36,37,41,42,43,46,55,56,57,58,59,60,61,62]))
.setDimensions(1200, 900)
.build();
var dashboard = Charts.newDashboardPanel().setDataTable(data)
.bind([timeframeFilter, locationFilter, monthFilter, yearFilter],[tableChartRet])
.build();
var app = UiApp.createApplication();
var FilterPanel = app.createVerticalPanel();
var chartPanel = app.createHorizontalPanel();
FilterPanel.add(timeframeFilter).add(locationFilter).add(monthFilter).add(yearFilter).setSpacing(10);
chartPanel.add(tableChartRet).setSpacing(10);
dashboard.add(app.createVerticalPanel().add(FilterPanel).add(chartPanel));
app.add(dashboard);
return app;
}
我不断收到“对象类型与列类型不匹配”错误。
我不知道如何设置它以便它可以找出什么是STRING以及什么是NUMBER。
我发现了this solution on Stack ...它确实有效,但是TableChart无法识别我的列标题(电子表格中的第一行)而且我丢失了数据的所有数字格式...它只是善良看起来很糟糕......
有什么想法吗?
谢谢!