Вставить формулу во весь столбец с помощью API Google Sheets - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь вставить формулу =INDIRECT(\"G\"&ROW()) - INDIRECT(\"J\"&ROW()) (которая вычитает J из G) в столбец K, используя Google Sheets API v4.Однако вместо вставки формулы в одну ячейку я хочу вставить ее во все текущие / будущие строки в данном столбце.

Для этого я использую следующий код:

public void updateSingleColumnAndParseInput(String spreadsheetId, String range, List<List<Object>> rowData) throws IOException, GeneralSecurityException
{

    final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();
    Sheets service = new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT)).setApplicationName(APPLICATION_NAME).build();


    ValueRange valueRange = new ValueRange();

    valueRange.setRange(range); 

    valueRange.setValues(rowData);
    valueRange.setMajorDimension("ROWS"); // "COLUMNS" //"ROWS" (both values give same result)

    List<ValueRange> oList = new ArrayList<>();
    oList.add(valueRange);

    Update update = service.spreadsheets().values().update(spreadsheetId, range, valueRange);
    update.setValueInputOption("USER_ENTERED"); // USER_ENTERED (values will be parsed)
    HttpResponse values = update.buildHttpRequest().execute();

}

Я вызываю этот метод, используя этот код:

updateSingleColumnAndParseInput("xxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "K2:K", dataList);

На основании этого и этого ответа Я ожидаю, что формула будет вставлена ​​во всетекущие и будущие строки столбца K, но после выполнения этого кода обновляется только вторая строка (K2).

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