Google 工作表 API: 插入格式化文本
Google Sheets API: insert formatted text
我正在尝试将粗体文本插入 Google 电子表格。我有以下成功插入文本的 NodeJS 代码。
var body = {
data: [{
range: 'M2:M3',
values: [["value1"],["value2"]]
}],
valueInputOption: 'USER_ENTERED',
};
var sheets = google.sheets('v4');
sheets.spreadsheets.values.batchUpdate({
auth: auth,
spreadsheetId: SPREADSHEET_ID,
resource: body
}, function(err, response) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
});
查了一下发现要将文本格式改为粗体,需要用到下面的代码
requests: [
{
"format": {
"textFormat": {
"bold": true
}
}
}
]
但是,我不明白这段代码应该放在哪里。尝试将 requests
和 format
分别放在 data
和 batchUpdate
中,但没有用。
这个示例脚本怎么样?如果要同时更新单元格值和单元格格式,可以使用 spreadsheets.batchUpdate。详细信息为here.
以下示例将 [["value1"],["value2"]]
导入到 'M2:M3'
,如您的脚本所示。作为示例,Sheet id 为 0。范围需要输入 GridRange。
示例脚本:
var sheets = google.sheets('v4');
var request = {
spreadsheetId: SPREADSHEET_ID,
resource: {
"requests": [
{
"updateCells": {
"rows": [
{
"values": [
{
"userEnteredValue": {
"stringValue": "value1"
},
"userEnteredFormat": {
"textFormat": {
"bold": true
}
}
}
]
},
{
"values": [
{
"userEnteredValue": {
"stringValue": "value2"
},
"userEnteredFormat": {
"textFormat": {
"bold": true
}
}
}
]
}
],
"range": {
"sheetId": 0, // Sheet id
"startColumnIndex": 12,
"endColumnIndex": 13,
"startRowIndex": 1,
"endRowIndex": 3
},
"fields": "*"
}
}
]
},
auth: auth,
};
sheets.spreadsheets.batchUpdate(request, function(err, response) {
if (err) {
console.error(err);
return;
}
console.log(JSON.stringify(response, null, 2));
});
如果我误解了你的问题,我很抱歉。
我正在尝试将粗体文本插入 Google 电子表格。我有以下成功插入文本的 NodeJS 代码。
var body = {
data: [{
range: 'M2:M3',
values: [["value1"],["value2"]]
}],
valueInputOption: 'USER_ENTERED',
};
var sheets = google.sheets('v4');
sheets.spreadsheets.values.batchUpdate({
auth: auth,
spreadsheetId: SPREADSHEET_ID,
resource: body
}, function(err, response) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
});
查了一下发现要将文本格式改为粗体,需要用到下面的代码
requests: [
{
"format": {
"textFormat": {
"bold": true
}
}
}
]
但是,我不明白这段代码应该放在哪里。尝试将 requests
和 format
分别放在 data
和 batchUpdate
中,但没有用。
这个示例脚本怎么样?如果要同时更新单元格值和单元格格式,可以使用 spreadsheets.batchUpdate。详细信息为here.
以下示例将 [["value1"],["value2"]]
导入到 'M2:M3'
,如您的脚本所示。作为示例,Sheet id 为 0。范围需要输入 GridRange。
示例脚本:
var sheets = google.sheets('v4');
var request = {
spreadsheetId: SPREADSHEET_ID,
resource: {
"requests": [
{
"updateCells": {
"rows": [
{
"values": [
{
"userEnteredValue": {
"stringValue": "value1"
},
"userEnteredFormat": {
"textFormat": {
"bold": true
}
}
}
]
},
{
"values": [
{
"userEnteredValue": {
"stringValue": "value2"
},
"userEnteredFormat": {
"textFormat": {
"bold": true
}
}
}
]
}
],
"range": {
"sheetId": 0, // Sheet id
"startColumnIndex": 12,
"endColumnIndex": 13,
"startRowIndex": 1,
"endRowIndex": 3
},
"fields": "*"
}
}
]
},
auth: auth,
};
sheets.spreadsheets.batchUpdate(request, function(err, response) {
if (err) {
console.error(err);
return;
}
console.log(JSON.stringify(response, null, 2));
});
如果我误解了你的问题,我很抱歉。