有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java更改谷歌表单的背景色

我在谷歌工作。我想编辑工作表上单元格的颜色。但它似乎不起作用。谁来帮帮我

Color color = new Color().setRed(Float.valueOf("1"))
            .setGreen(Float.valueOf("0"))
            .setBlue(Float.valueOf("0"));
    CellFormat cellFormat = new CellFormat().setBackgroundColor(color);
    CellData cellData = new CellData().setEffectiveFormat(cellFormat);
    List<CellData> cellDataList = List.of(cellData);
    RowData rowData = new RowData().setValues(cellDataList);
    List<RowData> rowDataList = List.of(rowData);

    GridRange gridRange = new GridRange().setSheetId(0).setStartRowIndex(0).setEndRowIndex(1).setStartColumnIndex(1).setEndColumnIndex(2);

    UpdateCellsRequest updateCellsRequest = new UpdateCellsRequest().setRange(gridRange).setRows(rowDataList).setFields("userEnteredFormat.backgroundColor");

    Request request = new Request().setUpdateCells(updateCellsRequest);
    List<Request> requestList = List.of(request);

    BatchUpdateSpreadsheetRequest update =
            new BatchUpdateSpreadsheetRequest().setRequests(requestList);
    service.spreadsheets().batchUpdate("1uZZkQ8XAgCe1R_tYqoFQ4Kva-H3il-G2mq2cEiAcBqM", update).execute();

共 (1) 个答案

  1. # 1 楼答案

    通过替换此代码解决了问题

    CellFormat cellFormat = new CellFormat().setBackgroundColor(color);
        CellData cellData = new CellData().setUserEnteredFormat(cellFormat);
        RepeatCellRequest repeatCellRequestRed = new RepeatCellRequest()
            .setRange(gridRange)
            .setCell(cellData)
            .setFields("userEnteredFormat.backgroundColor");
        Request request = new Request().setRepeatCell(repeatCellRequestRed);