gpt4 book ai didi

javascript - 使用 Google Sheets API (v4) 格式化单元格

转载 作者:行者123 更新时间:2023-12-04 20:08:56 34 4
gpt4 key购买 nike

我正在使用 Google Sheets API (v4) 以编程方式创建/更新电子表格并遇到以下问题:
根据文档( https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/cells#CellFormat ),我将数字格式设置为 CURRENCY ;这将正确地将数字显示为前面带有 ¥ 符号的数值(日语区域设置)。但是,它似乎并没有实际选择格式下拉列表中的“货币”选项,更重要的是,下载电子表格时不反射(reflect)指定的格式(例如,作为 .xlsx 文件)。
enter image description here
这与手动(通过 UI)选择“货币”选项不同,在这种情况下,一旦下载,值就会正确显示。
enter image description here
这是代码的相关部分:


import { google, sheets_v4 } from 'googleapis';

const sheetsApi = google.sheets({
version: 'v4',
auth: await this.getAuthClient(),
});

await sheetsApi.spreadsheets
.batchUpdate({
spreadsheetId: resource,
requestBody: {
requests: [
{
updateSpreadsheetProperties: {
fields: 'locale',
properties: {
locale: 'ja',
},
},
},

...,

{
repeatCell: {
fields: 'userEnteredFormat.numberFormat',
cell: {
userEnteredFormat: {
numberFormat: { type: 'CURRENCY' },
},
},
},
},
],
},
})
.catch((error) => {
console.log(error);
});
我也尝试过设置模式(尝试了几个不同的模式),但无法实际设置单元格格式,尽管值是这样显示的。
可能是一个简单的错误,但我已经坚持了一段时间......任何帮助将不胜感激!

最佳答案

在那种情况下,我认为 pattern 的属性可能需要设置。那么在这种情况下,如何修改你的请求 repeatCell如下?
修改请求:

{
"repeatCell": {
"range": {,,,}, // Please set range.
"cell": {
"userEnteredFormat": {
"numberFormat": {
"type": "CURRENCY",
"pattern": "[$¥-411]#,##0.00" // <--- Added
}
}
},
"fields": "userEnteredFormat.numberFormat" // or "fields": "userEnteredFormat"
}
}
笔记:
  • 在我的环境中,当上述修改后的请求用于 batchUpdate 方法时,我可以确认“货币”已被选中。

  • 引用:
  • RepeatCellRequest - NumberFormat
  • 关于javascript - 使用 Google Sheets API (v4) 格式化单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67417205/

    34 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com