Ответ 1
Я написал пример кода для выполнения вашего запроса. Этот код использует класс Embedded Chart для создания диаграммы из таблицы, составленной по формуле с использованием QUERY
. Этот код сначала устанавливает формулу, после этого он определяет диапазон таблицы результатов, а затем использует этот диапазон для создания диаграммы на другом листе в той же электронной таблице.
Я использовал пример таблицы из двух столбцов, из которых я искал те, которые имеют значение больше 499 во втором столбце. Это код:
function buildChart() {
var dataSheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var graphSheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[1];
var searchTable = dataSheet.getRange('D1').setFormula(
'=QUERY(A1:B100,"SELECT A, B WHERE B > 499",1)');
var searchTableRows = dataSheet.getRange('D1').getDataRegion(SpreadsheetApp
.Dimension.ROWS);
var searchTableRange = searchTableRows.getDataRegion(SpreadsheetApp.Dimension
.COLUMNS);
var chartBuilder = dataSheet.newChart();
chartBuilder.addRange(searchTableRange).setChartType(Charts.ChartType.LINE)
.setOption('title', "MarcoBros_ Chart").setPosition(1, 1, 0, 0);
graphSheet.insertChart(chartBuilder.build());
}
Поскольку это всего лишь пример, вам придется немного его изменить, чтобы адаптировать к своему проекту. Пожалуйста, дайте мне знать, если вам нужна помощь с этим или у вас есть какие-либо сомнения по поводу кода.