Java Google SpreadSheet API, как обновить ячейку, чтобы добавить заметку? - PullRequest
0 голосов
/ 06 ноября 2018

Ну, мне нужно найти способ добавить заметку в таблицу Google, я использую Java для подключения.

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

Вот как я могу изменить запрос на сборку, чтобы изменить цвет:

    private Request buildRequestToPaintCell(int startRow, int endRow, int startColumn, int endColumn, int sheetId) {
    Request request = new Request();
    request.setRepeatCell(new RepeatCellRequest()
            .setCell(new CellData()
                    .setUserEnteredFormat(new CellFormat().setBackgroundColor(new Color()
                            .setRed(1f)
                            .setGreen(0.0f)
                            .setBlue(0.0f))))
            .setRange(new GridRange()
                    .setSheetId(sheetId)
                    .setStartRowIndex(startRow)
                    .setEndRowIndex(endRow)
                    .setStartColumnIndex(startColumn)
                    .setEndColumnIndex(endColumn))
            .setFields("userEnteredFormat.backgroundColor")
            );
    return request;
}

Я ожидал, что это сработает, но это не так, так как я устанавливаю поле как '*', он очищает ячейку и добавляет примечание, но это не то, что мне нужно, я думаю, что мне не хватает правильного значения поля обновить только заметку пока не могу найти.

private Request buildRequestAddNoteCell(int startRow, int endRow, int startColumn, int endColumn, int sheetId, String note) {
    Request request = new Request();
    request.setRepeatCell(new RepeatCellRequest()
            .setCell(new CellData().setNote(note))
            .setRange(new GridRange()
                    .setSheetId(sheetId)
                    .setStartRowIndex(startRow)
                    .setEndRowIndex(endRow)
                    .setStartColumnIndex(startColumn)
                    .setEndColumnIndex(endColumn))
            .setFields("userEnteredFormat.note")
            );
    return request;
}

1 Ответ

0 голосов
/ 06 ноября 2018

Я нашел это. Пришлось установить поля как «примечание». Отсутствует документ о полях ячейки.

Пример кода:

private Request buildRequestAddNoteCell(int startRow, int endRow, int startColumn, int endColumn, int sheetId, String note) {
    Request request = new Request();
    request.setRepeatCell(new RepeatCellRequest()
            .setCell(new CellData().setNote(note))
            .setRange(new GridRange()
                    .setSheetId(sheetId)
                    .setStartRowIndex(startRow)
                    .setEndRowIndex(endRow)
                    .setStartColumnIndex(startColumn)
                    .setEndColumnIndex(endColumn))
            .setFields("note")
            );
    return request;
}
...