Ошибка «Не удается найти метод insertChart (EmbeddedChartBuilder)» при использовании скрипта Apps для создания встроенных диаграмм - PullRequest
0 голосов
/ 03 мая 2019

Я хотел бы взять данные из электронной таблицы «dataSheet» (предоставленной мне только для просмотра), чтобы создать диаграмму, и вывести ее на свою собственную «таблицу» электронных таблиц.

Я использую скрипт Apps для созданияembeddedChart и обнаружил эту ошибку: не удается найти метод insertChart (EmbeddedChartBuilder).

Я внимательно следовал руководству Google https://developers.google.com/apps-script/reference/spreadsheet/embedded-chart, но не могу устранить ошибку.

Я отладил шагпошагово и понял, что ошибка происходит в .insertChart (последняя строка кода).

var chartBuilder = sheet.newChart();
chartBuilder.addRange(dataSheet.getRange('R'+earliestRowUsed + 'C1:R'+latestRowUsed + 'C1'))
    .setChartType(Charts.ChartType.COLUMN)  
    .setPosition(5,5,0,0);

//collect data from dataSheet to add to Range.    
for (indicator = 0; indicator < indicatorP.length; indicator++) {  
    indicatorIndex = indicatorList[0].indexOf(indicatorP[indicator]);
    chartBuilder.addRange(dataSheet.getRange('R'+earliestRowUsed + 'C'+(dataCol + indicatorIndex) +':'+ 'R'+latestRowUsed + 'C'+(dataCol + indicatorIndex)));
  }

chartBuilder.setMergeStrategy(Charts.ChartMergeStrategy.MERGE_COLUMNS); //join columns to create a table
chartBuilder.build();
sheet.insertChart(chartBuilder); //error takes place here.

Я открыт для использования Графики или EmbeddedCharts моя диаграмма для моей цели (то есть взять данные из общего листа только для просмотра, чтобы создать диаграмму и встроить в нее).

Для работы с диаграммами и листами я нашел это руководство Google https://developers.google.com/chart/interactive/docs/spreadsheets#embedding-achart-in-a-spreadsheet.

Однако в руководстве показан только ручной процесс создания диаграмм, а не с помощью скрипта приложений.Если кто-нибудь знает, как, оцените ваш обмен, так как я не смог ничего найти в Интернете.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 мая 2019

После тестирования нескольких сценариев я обнаружил, что проблема заключается в том, что EmbeddedCharts не может использовать данные из другого файла листа (только для просмотра или принадлежащего). Использование данных из любых листов в файле EmbeddedCharts должно быть создано в работах.

0 голосов
/ 03 мая 2019

Я думаю, что ваша проблема в разрешениях «Только просмотр».Уверен, что если вы хотите программно взять данные из листа и использовать их где-то еще, вам нужно будет запросить права на редактирование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...