是否有编程方式来控制隐藏/取消隐藏 Google 电子表格中的网格线或受保护范围?菜单中有一个选项 - 视图 > 网格线或受保护的范围来执行此操作。但我想在脚本中做到这一点。
谢谢。
是否有编程方式来控制隐藏/取消隐藏 Google 电子表格中的网格线或受保护范围?菜单中有一个选项 - 视图 > 网格线或受保护的范围来执行此操作。但我想在脚本中做到这一点。
谢谢。
试试Sheet.setHiddenGridlines(true)
。请参阅https://developers.google.com/apps-script/reference/spreadsheet/sheet#setHiddenGridlines(Boolean)
有点晚了,但这里有一个方便的代码段,通过从 Google Apps 脚本中调用 V4 API 来完成此操作。
为此:
您需要在 Google Cloud Console 中为 Sheet 绑定的 Google Apps 脚本项目启用 Sheets v4 API,您可以在脚本编辑器中从 Resources-> Cloud Platform 项目...
您可能还需要启用 Sheets V4 API Resources->Advanced Google services...
function test() {
var spreadsheetId = SpreadsheetApp.getActive().getId();
var sheetId = SpreadsheetApp.getActiveSheet().getSheetId();
hideGridlines(spreadsheetId, sheetId, false);
}
/**
* Hide or show gridlines
*
* @param {string} spreadsheetId - The spreadsheet to request.
* @param {number} sheetId - The ID of the sheet.
* @param {boolean} hideGridlines - True if the grid shouldn't show gridlines in the UI.
**/
function hideGridlines(spreadsheetId, sheetId, hideGridlines) {
var resource = {
"requests": [
{
"updateSheetProperties": {
"fields": "gridProperties(hideGridlines)",
"properties": {
"sheetId": sheetId,
"gridProperties": {
"hideGridlines": hideGridlines
}
}
}
}
],
"includeSpreadsheetInResponse": false,
"responseIncludeGridData": false,
}
Sheets.Spreadsheets.batchUpdate(resource, spreadsheetId)
}
我使用命令:
sheet.getRange(1,1,maxrows,maxcolumns).setBorder(true,true,true,true,false,false,"white");
这会将线条颜色更改为白色,与背景相同。然后,网格线被“隐藏”。这对我有用。
坏消息,恐怕。我自己花了一个小时寻找相同的答案,但我认为没有!