如何在Google表格中显示formattedValue而不是userEnteredValue?

问题描述 投票:0回答:1

我一直在尝试通过服务帐户在Google表格的单元格中添加一个值,并向查看者显示格式化的文本。就像,该值可以为1,但我将显示“ John”而不是它。因此,我按照文档进行操作,并在batch_update中找到了请求updateCell,其中有一个选项可以显示“ formattedValue”。

formattedValue

字符串

单元格的格式化值。这是显示的值用户。该字段是只读的。

所以这就是我尝试过的-

req = []

req.append({
         "updateCells": {
              "rows": [
                  {
                     "values": [
                        {
                           "userEnteredValue": {
                                "numberValue": 17
                           },
                           "formattedValue": "ThisShouldBeShownToTheUser",
                           "userEnteredFormat": {
                                 "horizontalAlignment": "CENTER",
                                 "verticalAlignment": "MIDDLE"            
                           },
                        }
                     ]
                  }
               ],
               "fields": "*",
               "range": {
                     "sheetId": sheet.get_worksheet(0).id,
                     "startRowIndex": 0,
                     "endRowIndex": 1,
                     "startColumnIndex": 0,
                     "endColumnIndex": 1
               }
          }
      })

sheet.batch_update({"requests":req})

但是它不起作用,并显示userEnteredValue。我究竟做错了什么?还是这不是formattedValue应该做什么?如果是这种情况,那么我应该怎么做才能完成任务?

google-sheets google-sheets-api gspread
1个回答
0
投票
  • 您想将17的值作为原始值,并想在单元格中将ThisShouldBeShownToTheUser显示为显示的值。
  • 您想通过gspread和python实现此目的。

我可以像上面那样理解。如果我的理解是正确的,那么这个答案呢?请认为这只是几个可能的答案之一。

修改点:

  • 为了实现上述目标,请使用numberFormat代替formattedValue

当您的请求正文被修改时,它变成如下。

已修改的请求正文:

req.append({
  "updateCells": {
    "rows": [{
      "values": [{
        "userEnteredValue": {
          "numberValue": 17
        },
        "userEnteredFormat": {
          "horizontalAlignment": "CENTER",
          "verticalAlignment": "MIDDLE",
          "numberFormat": {
            "pattern": "\"ThisShouldBeShownToTheUser\"",
            "type": "NUMBER"
          }
        }
      }]
    }],
    "fields": "*",
    "range": {
      "sheetId": sheet.get_worksheet(0).id,
      "startRowIndex": 0,
      "endRowIndex": 1,
      "startColumnIndex": 0,
      "endColumnIndex": 1
    }
  }
})

参考:

© www.soinside.com 2019 - 2024. All rights reserved.